PoffeMedlem sedan apr. 20022 743 inlägg hmm.. vet inte riktigt om detta hör hemma i asp eller js forumet men..
jag har en asp-sida som tar lång tid att ladda (det är helt naturligt efter som den har myyycket info att hantera) så jag funderade lite och kom fram till att ett s.k. onload-script skulle sitta fint.
alltså att det står typ "Laddar.." menads sidan laddar och sen när den är klar så visas sidan. Men eftersom asp körs av servern onnan den kommer till webbläsaren så funkar inte vanliga javascript för detta eftersom de körs först efter att sidan har skickats till webbläsaren, alltså har tiden redan gått medan den laddtads av servern..
Så finns det nån lösning på detta problem tror ni? typ så att den laddar sidan i bakgrunden av en annan och sen när den är fördigladdad så skickas man till den.
nån som har en idé på hur detta kan lösas? (om det va nån som fattade vad jag menar :h)
PallemanMedlem sedan dec. 2000557 inlägg Response.Flush och Response.Buffer borde la fungera..
ex.
<%
Response.Flush
Response.Write "Laddar sidan.."
Response.Buffer = True
' Resten av din kod..
%>
PoffeMedlem sedan apr. 20022 743 inlägg *tackar och bockar med hatten i handen*
ska testa det :)
PoffeMedlem sedan apr. 20022 743 inlägg *efter ett snabbt test*
verkar inte funka :(
det står "Laddar sidan.." när den inte laddar och när den laddar så står inget alls
Jesper TMedlem sedan nov. 20017 144 inlägg
Men eftersom asp körs av servern onnan den kommer till webbläsaren så funkar inte vanliga javascript för detta eftersom de körs först efter att sidan har skickats till webbläsaren
Fel!
använd:response.buffer=true
Kör javascriptet med "Laddar sidan..."
Kör Response.flush
Loopa recordsetet
Funkar 100% bra för mig.
PoffeMedlem sedan apr. 20022 743 inlägg testar detta istället, tackar!
PoffeMedlem sedan apr. 20022 743 inlägg hmm.. ja du, märker ingen skillnad mot vad Palle skrev, alltså omvänd ordning.
det står alltså fortfarande Laddar sidan.. när den är fördig och inte när den laddas
PallemanMedlem sedan dec. 2000557 inlägg Gjorde ett litet snabbtest, detta fungerar bra:
<html>
<head>
<script language="JavaScript">
function hide_it(){
if (document.all){
document.all["loadmessage"].style.visibility = "hidden";
}
if (document.layers){
document.layers.loadmessage.visibility = "hide";
}
}
</script>
</head>
<body onLoad="hide_it()">
<span id="loadmessage" style="position: absolute; background: #ffffff; width: 100%; height: 100%;">Sidan laddas, vänta...</span><br>
<%
Response.Buffer = True
For i = 1 To 500000
Response.Write "#"
Next
%>
</body>
</html>
PoffeMedlem sedan apr. 20022 743 inlägg inte för mig :(
har testat nång ggr nu och jag ser inte texten "Sidan laddas, vänta"
den bara laddar..
Jesper TMedlem sedan nov. 20017 144 inlägg Kör javascriptet med "Laddar sidan..."
Du måste använda javascript som plockar bort texten när sidan är laddad.
Jesper TMedlem sedan nov. 20017 144 inlägg Vad har du för webläsare?
PoffeMedlem sedan apr. 20022 743 inlägg förstår inte riktigt hur du menar Jesper, typ som den kod Palle postade nu?
PoffeMedlem sedan apr. 20022 743 inlägg IE 6.0
testade nu i NS och Opera oxå, i Opera funkar det inte heller och i NS står det bara Sidan laddas.. hela tiden
PoffeMedlem sedan apr. 20022 743 inlägg okej, får det inte att funka bara.. hmm jaja, får väll ha det som det är nu.. lite trist med bara en vit sida när den laddas men
PallemanMedlem sedan dec. 2000557 inlägg Du kan ju trösta dig med att det fungerar fin fint i IE 5.5 iaf.. ;)
PoffeMedlem sedan apr. 20022 743 inlägg hehe, ja det får jag göra :D
Tack grabbar för hjälpen!