/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
IE: reload hvis alt ikke er der
Fra : Jon Ege Ronnenberg


Dato : 27-09-03 15:08

Hej.

På mit site har jeg en div, som kun bliver vist hvis man er
logget ind. Problemet er at jeg har lavet en catching som gemmer
siden i 5 dage. Når en bruger så har kigget på en side og så
logger ind bliver den div der skal vises ikke vist, pga. den
gamle side hvor klienten ikke er logget ind er gemt i catchen.
Jeg prøver derfor i javascript at lave en function, som bliver
kørt når siden er load'et, at reload'er siden hvis div'en ikke
bliver vist. Jeg har prøvet følgende:
function reloadIfValid(blnValidUser) {
if (blnValidUser == true) && (document.all.devMenu == null) {
location.reload();
}
}
blnValidUser kommer fra serveren og virker fint, bortset fra at
den så reload'er siden konstant. Den anden side af && virker
overhoved ikke. devMenu er div'ens id, som har class rightmenu.
Jeg ved ikke hvad jeg skal gøre.
Hvis der nogen som kan gennemskue det her vil jeg være
taknemmelig for hjælp. Jeg er ikke haj til JavaScript, så det må
gerne være et pædagogisk svar.

Skriv endelig hvis der noget som jeg ikke har forklaret godt
nok..

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Henrik Stidsen (27-09-2003)
Kommentar
Fra : Henrik Stidsen


Dato : 27-09-03 18:36

Jon Ege Ronnenberg <007-is-his-iq@ofir.dk> wrote in
news:bl45kk$nus$1@sunsite.dk

> Problemet er at jeg har lavet en catching som gemmer
> siden i 5 dage.

Hvorfor dog det ?

--
..: Henrik Stidsen - http://hs235.dk/ - http://hs235.dk/blog/ ::...
Nerd is a word only used by those who can’t pronounce ’Intellectual’.
- http://query.dk/permlink.php?link=1058129898

Jon Ege Ronnenberg (02-10-2003)
Kommentar
Fra : Jon Ege Ronnenberg


Dato : 02-10-03 22:08

Tidsforskellen mellem at hente data fra en proxy-server eller endog
fra den lokale harddisk, er mange gange hurtigere end at hente data
fra en fjern webserver.
Mit problem er egentlig bare at jeg skal se om en div er load'et. Der
må være en mulighed for at tjekke om en div er på siden eller ej.

MVH - Jon
>
> > Problemet er at jeg har lavet en catching som gemmer
> > siden i 5 dage.
>
> Hvorfor dog det ?
>

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Henrik Stidsen (03-10-2003)
Kommentar
Fra : Henrik Stidsen


Dato : 03-10-03 00:37

Jon Ege Ronnenberg <007-is-his-iq@ofir.dk> wrote in
news:bli42m$685$1@sunsite.dk

> Tidsforskellen mellem at hente data fra en proxy-server eller
> endog fra den lokale harddisk, er mange gange hurtigere end at
> hente data fra en fjern webserver.

Så skal den også være fjern :)

Browsere nu til dags spørger hvornår siden er ændret sidst og henter
den kun hvis serverens udgave er nyere end browserens cachede udgave.
Du behøver altså ikke spekulere på at fortælle hvor længe siden skal
caches.

--
..: Henrik Stidsen - http://hs235.dk/ - http://hs235.dk/blog/ ::...
Nerd is a word only used by those who can’t pronounce ’Intellectual’.
- http://query.dk/permlink.php?link=1058129898

Jon Ege Ronnenberg (03-10-2003)
Kommentar
Fra : Jon Ege Ronnenberg


Dato : 03-10-03 09:43

Hej Henrik.

Ved du hvor man kan læse mere browsers catche logik? Jeg vil gerne vide
hvilke browsere som "intelligente" nok, til at gøre det du siger. Nu
tænker jeg især på mobile, tv og opensource browserne. Jeg sigter efter
at lave noget der også virker om 5 år... (good luck)

Nu jeg har dig - du skulle vel ikke vide hvordan man tjekker om et div
element er på siden, i JavaScript?

På forhånd tak - Jon

Henrik Stidsen wrote in dk.edb.internet.webdesign.clientside:
> Jon Ege Ronnenberg <007-is-his-iq@ofir.dk> wrote in
> news:bli42m$685$1@sunsite.dk
>
> > Tidsforskellen mellem at hente data fra en proxy-server eller
> > endog fra den lokale harddisk, er mange gange hurtigere end at
> > hente data fra en fjern webserver.
>
> Så skal den også være fjern :)
>
> Browsere nu til dags spørger hvornår siden er ændret sidst og henter
> den kun hvis serverens udgave er nyere end browserens cachede udgave.
> Du behøver altså ikke spekulere på at fortælle hvor længe siden skal
> caches.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Henrik Stidsen (03-10-2003)
Kommentar
Fra : Henrik Stidsen


Dato : 03-10-03 12:54

Jon Ege Ronnenberg <007-is-his-iq@ofir.dk> wrote in
news:bljcpu$lh1$1@sunsite.dk

> Ved du hvor man kan læse mere browsers catche logik? Jeg vil
> gerne vide hvilke browsere som "intelligente" nok, til at gøre
> det du siger. Nu tænker jeg især på mobile, tv og opensource
> browserne. Jeg sigter efter at lave noget der også virker om 5
> år... (good luck)

Jeg ved ikke lige hvor du kan læse om det men med mindre der manuelt
ændres i indstillingerne så opfører alle de gængse browsere sig sådan
så jeg tror roligt du kan lade browseren bekymre sig om det.

> Nu jeg har dig - du skulle vel ikke vide hvordan man tjekker om
> et div element er på siden, i JavaScript?

Desværre.

--
..: Henrik Stidsen - http://hs235.dk/ - http://hs235.dk/blog/ ::...
Nerd is a word only used by those who can’t pronounce ’Intellectual’.
- http://query.dk/permlink.php?link=1058129898

Lasse Reichstein Nie~ (03-10-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 03-10-03 18:18

Jon Ege Ronnenberg <007-is-his-iq@ofir.dk> writes:

> Nu jeg har dig - du skulle vel ikke vide hvordan man tjekker om et div
> element er på siden, i JavaScript?

Hvis elementet skulle have en id, så kan man lede efter det med
document.getElementById(id)
Den er "null" hvis der ikke er et element med det navn.

Hvis det skal virke i IE 4, som ikke har document.getElementById, så
kan man bruge document.all[id]. Hvis det skal virke i Netscape 4, så
skal div'en være absolut placeret, og så kan man finde den i
document.layers-samlingen.

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'

Ryan Kristensen (03-10-2003)
Kommentar
Fra : Ryan Kristensen


Dato : 03-10-03 13:14

> Jeg prøver derfor i javascript at lave en function, som bliver
> kørt når siden er load'et, at reload'er siden hvis div'en ikke
> bliver vist. Jeg har prøvet følgende:
> function reloadIfValid(blnValidUser) {
> if (blnValidUser == true) && (document.all.devMenu == null) {
> location.reload();
> }
> }

Umiddelbart forstår jeg ikke hvorfor du gemmer siden i brugerens cache i 5 dage, når det giver problemer. Med mindre siden er enormt
tung, så tager det ikke så lang tid at hente, - og hvis siden er så tung, så burde du måske gøre noget ved dét i stedet for at bruge
en javascript funktion.

Hvis du stadig mener, at en javascript løsning er det bedste, så prøv dette:

function erdivder() {
if (blnValidUser == true) && (!document.getElementById('devMenu'))
{
window.location.reload();
}
}

og i din body skriver du:
onload="erdivder()"
--
Ryan



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408526
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste