webForumDet fria alternativet

skriv ut om sidan är laddad..

JavaScript

10 svar · 253 visningar · startad av Thomasa

Medlem sedan aug. 2002351 inlägg
Frågan#1

Jag har idag ett script som visar hela lagret som heter bodyn om allt är färdigladdat, jag vill nu att det ska skrivas ut en rad till webbläsaren först när allt är laddat.

problemet är att jag försöker göra så att menyerna i en annan frame går ner när man rör på musen enl följande:

<span id="musen" onmousemove="parent.menyen.mylayertva.glideTo('slow','slow',459,92,10,20);parent.menyen.mylayerett.glideTo('slow','slow',305,92,10,20);parent.menyen.mylayertre.glideTo('slow','slow',613,92,10,20)" style="visibility:hidden">

Jag hag försökt att bara gömma lagret som innehåller den koden som man ser nedan, men det gick inte, jag får ett error att mylayerxxx inte är definierad, jag vill alltså att den ska skriva ut den raden med onmousemove när alla lager är definierade i javascriptet.. någon som kan detta bättre än jag och orkar hjälpa lite till.. tacktack :)

<script language="JavaScript"> 
function hide_it(){ 
	Id = "loadmessage"; 
	if (document.all) { 
		document.all["loadmessage"].style.visibility = "hidden"; 
		document.all["bodyn"].style.visibility = "visible";
		document.all["musen"].style.visibility = "visible";
	} else if (document.layers){ 
		document.layers["loadmessage"].visibility = "hide"; 
		document.layers["bodyn"].visibility = "show"; 
		document.layers["musen"].visibility = "show"; 
	} else if (document.getElementById){ 
		document.getElementById("loadmessage").style.visibility = "hidden"; 	
		document.getElementById("bodyn").style.visibility = "visible"; 
		document.getElementById("musen").style.visibility = "visible"; 
	} 
}
</script>
Medlem sedan juni 20014 421 inlägg
#2

Vi kan börja med en enkel städning i din kod först:

<script language="JavaScript"> 
function hide_it(){ 
	if (document.all) { 
		document.all["loadmessage"].style.visibility = "hidden"; 
		document.all["bodyn"].style.visibility = "visible";
		document.all["musen"].style.visibility = "visible";
	} else if (document.layers){ 
		document.layers["loadmessage"].visibility = "hide"; 
		document.layers["bodyn"].visibility = "show"; 
		document.layers["musen"].visibility = "show"; 
	} else if (document.getElementById){ 
		document.getElementById("loadmessage").style.visibility = "hidden"; 	
		document.getElementById("bodyn").style.visibility = "visible"; 
		document.getElementById("musen").style.visibility = "visible"; 
	} 
}
</script>

Denna variabeln använde du inte:

Id = "loadmessage";

Det du vill göra är alltså att skriva ut en html-rad när hela webbsidan är laddad?

Det du försökte göra förut (det jag tror du förökte göra förut) var alltså att försöka dölja scriptet innan laddning för att det inte skulle kunna exekveras? Det går inte, pga att det ligger där oavsett om det ät dolt på sidan eller ej

Medlem sedan aug. 2002351 inlägg
#3

ja då blir det svårt :l

Medlem sedan juni 20014 421 inlägg
#4

colione skrev:

Det du vill göra är alltså att skriva ut en html-rad i en annan frame när hela webbsidan är laddad?

Medlem sedan aug. 2002351 inlägg
#5

Jo det blir nog som du säger.. att när menyframen är helt laddad så ska den "skriva" eller välja att läsa den rad som säger att menyerna ska glida ner om man rör på musen..

1. De objekten som heter mylayerett, tva och tre är laddade och därför så kör jag den här raden..

om du kollar på denna adress:
http://liko.baren.nu/web/frameset.asp?topnumber=2&marketid=86&menuid=1190&prod=true

så ser du vad jag menar, jag vill alltså att menyerna ska glida ner när man rör musen i den undre framen, det fungerar bra, men problemet är att man får upp ett javascripterror som säger att t.ex. mylayerett inte är definierad..

Medlem sedan aug. 2002351 inlägg
#6

.. det händer när man rör på musen samtidigt som sidan laddar..

Medlem sedan juli 2000836 inlägg
#7

Är det tredje tråden om samma problem? Vore det inte bättra att ta allt i samma?

Om problemet är att du får fel när du rör musen i den nedre framen samtidigt som den övre framen inte är fördigladdad, bör du kolla om dina element finns innan du kör koden:

I show_page.asp:

<script>
function glideToAnnanFrame(){
	if(parent.menyen.mylayerett && parent.menyen.mylayertva && parent.menyen.mylayertre){
		parent.menyen.mylayerett.glideTo('slow','slow',305,92,10,20);
		parent.menyen.mylayertva.glideTo('slow','slow',459,92,10,20);
		parent.menyen.mylayertre.glideTo('slow','slow',613,92,10,20);
	}
}
</script>

<body onmousemove="glideToAnnanFrame();">

Då körs ingen kod om inte lagren i den adra framen är färdigladdade.

Medlem sedan aug. 2002351 inlägg
#8

Är det tredje tråden om samma problem? Vore det inte bättra att ta allt i samma?

- Det beror på att det löser sig, men sen hittar jag ett nytt fel.. samma meny men det är nya fel..

då ska jag testa det, tackar tackar :) !

Medlem sedan aug. 2002351 inlägg
#9

precis det som jag var ute efter tackar så mycket!

Medlem sedan juli 2000836 inlägg
#10

Så... Hade du fortsatt att beskriva följdfelen i en och samma tråd, hade du undvikit 10 extra inlägg innan uppnått resultat.

Medlem sedan aug. 2002351 inlägg
#11

jag ska ta det i åtanke till nästa gång :r , tackar än en gång för hjälpen! :)

263 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)