JS ---- IE vs. Mozilla
Nurmi 27.12.2002 - 18:50 893 15
Nurmi
OC Addicted
|
hab ein primitives script für layer hidden/show geschrieben. Es funkt super im Mozilla ABER im IE zeigt er den zu zeigenden Layer immer nur ganz kurz und dann blendet er wieder auf den Layer der von anfang an gezeigt wird... Versteh ich nicht weils ja im Mozilla einwandfrei funkt.... kann mir da wer helfen? AUFRUF <a onClick="ShowLayer('Layer1');" href="#">Layer1</a> <a onClick="ShowLayer('Layer2');" href="#">Layer2</a> METHODE: function ShowLayer(LayerNr) { if (LayerNr == 'Layer1'){ document.getElementById('Layer2').style.visibility = 'hidden'; document.getElementById(LayerNr).style.visibility = 'visible'; } if (LayerNr == 'Layer2'){ document.getElementById('Layer1').style.visibility = 'hidden'; document.getElementById(LayerNr).style.visibility = 'visible';} } }//end LAYER <div id="Layer1" style="position:absolute; left:356px; top:195px; width:530px; height:460px; z-index:1; background-color:#9999CC; layer-background-color:#9999CC; border: 1px none #000000"> ka warum das ned funkt (((
Bearbeitet von Nurmi am 27.12.2002, 19:40
|
atrox
in fairy dust... I trust!
|
fehlen da nicht einfache Anführungszeichen ' bei den getElementById(Layer1) ??
|
atrox
in fairy dust... I trust!
|
btw.. sollten nicht beim zweiten if die hidden/visible vertauscht sein?
|
Nurmi
OC Addicted
|
diese fehler sind nicht der grund - waren übertragungsfehler also abschreibfehler - funkt im IE noch immer nicht im Mozilla einwandfrei *heul*
|
atrox
in fairy dust... I trust!
|
postest du das komplette beispiel, wo es auch einen layer 2 gibt ?
|
Nurmi
OC Addicted
|
bitte einfach copy pasten und ausprobieren um IE....
<html> <head> <script language="JavaScript"> <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true);
function showHideLayers(LayerNr) { if (LayerNr == 'Layer1'){ document.getElementById('Layer2').style.visibility = 'hidden'; document.getElementById('Layer3').style.visibility = 'hidden'; document.getElementById('Layer4').style.visibility = 'hidden'; document.getElementById(LayerNr).style.visibility = 'visible'; } if (LayerNr == 'Layer2'){ document.getElementById('Layer1').style.visibility = 'hidden'; document.getElementById('Layer3').style.visibility = 'hidden'; document.getElementById('Layer4').style.visibility = 'hidden'; document.getElementById(LayerNr).style.visibility = 'visible'; } if (LayerNr == 'Layer3'){ document.getElementById('Layer1').style.visibility = 'hidden'; document.getElementById('Layer2').style.visibility = 'hidden'; document.getElementById('Layer4').style.visibility = 'hidden'; document.getElementById(LayerNr).style.visibility = 'visible'; } if (LayerNr == 'Layer4'){ document.getElementById('Layer1').style.visibility = 'hidden'; document.getElementById('Layer2').style.visibility = 'hidden'; document.getElementById('Layer3').style.visibility = 'hidden'; document.getElementById(LayerNr).style.visibility = 'visible'; } }
// --> </script> </head> <body bgcolor="#00CCCC" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <div id="Layer1" style="position:absolute; left:356px; top:195px; width:530px; height:460px; z-index:1; background-color:#9999CC; layer-background-color:#9999CC; border: 1px none #000000"> <blockquote> <p><font size="+1"><b>Willkommen</b></font></p> <p> </p> <p><br> WillkommenWillkommenWillkommenWillkommenWillkommen sdfsdfsdfsdfsdsdfsd </p> <p> </p> <p> </p> </blockquote> </div> <table width="915" border="0" height="640" align="left"> <tr> <td height="964"><br> <br> <br> <table width="100%" border="0" height="550" align="center"> <tr> <td valign="top"> <p><b><font size="+2">Wir über uns:</font></b></p> <ul> <li><font size="+1"><b> <a onClick="showHideLayers('Layer1');" href="#">Willkommen</a></b></font></li> <li><b><font size="+1"> <a onClick="showHideLayers('Layer2');" href="#">Verständnis</a></font></b></li> <li><b><font size="+1"><a onClick="showHideLayers('Layer3');" href="#">Angebote</a></font></b></li> <li><b><font size="+1"><a onClick="showHideLayers('Layer4');" href="#">Finanzielles</a></font></b> </li> </ul> <div id="Layer1" style="position:absolute; left:356px; top:195px; width:530px; height:460px; z-index:1; background-color:#9999CC; layer-background-color:#9999CC; border: 1px none #000000"> <blockquote> <p><font size="+1"><b>Willkommen</b></font></p> <p> </p> <p><br> Wsdfdsfsdf fs fsffsdfsfsdf sdfsd fsdfds </p> <p> </p> <p> </p> </blockquote> </div> <div id="Layer2" style="position:absolute; left:356px; top:195px; width:530px; height:460px; z-index:1; background-color:#9999CC; layer-background-color:#9999CC; border: 1px none #000000"> <blockquote> <p><font size="+1"><b>Verständnis</b></font></p> <p> </p> <p>n zahlreichen Möglichkeiten, inmitten der Natur aktiv zu werden (Spielen im </p> <p> </p> <p> </p> <p> </p> <p>Wald, Radfahren, Laufen...) oder sich auf unseren Außenanlagen sportlich zu </p> <p>sdfsdfsdfdfsd ff sdfsdfsd df sd </p> <p> </p> <p> </p> </blockquote> </div> <div id="Layer3" style="position:absolute; left:356px; top:195px; width:530px; height:460px; z-index:1; background-color:#9999CC; layer-background-color:#9999CC; border: 1px none #000000"> <blockquote> <p><font size="+1"><b>Angebote</b></font></p> <p> </p> <p><font size="+1"><b>Angebote</b></font><font size="+1"><b>Angebote</b></font><font size="+1"><b>Angebote</b></font><font size="+1"><b>Angebote</b></font><font size="+1"><b>AngebAngebote</b></font>. </p> <p> </p> <p> </p> </blockquote> </div> <div id="Layer4" style="position:absolute; left:356px; top:195px; width:530px; height:460px; z-index:1; background-color:#9999CC; layer-background-color:#9999CC; border: 1px none #000000"> <blockquote> <p><font size="+1"><b>Angebote</b></font></p> <p> </p> <p><font size="+1"><b>sdfdsfsfdfdsf sd fsdfs fs fsfsf fd</b></font>. </p> <p> </p> <p> </p> </blockquote> </div> <p> </p> </td> </tr> </table> </td> </tr> </table> </body> </html>
|
Nurmi
OC Addicted
|
na i bin dann aber gespannt was der fehler ist....
|
atrox
in fairy dust... I trust!
|
du hast id=layer1 mehrfach vergeben - abgesehen davon geht es im IE 5.00 trotzdem.
|
Nurmi
OC Addicted
|
also i hob 6.0 und es funkt ned
|
Nurmi
OC Addicted
|
hmmm lokal mit c:\.... funkts mit localhost/.... funkts ned - interessant )) danke für deine Hilfe!
|
atrox
in fairy dust... I trust!
|
für deine anwendung solltest du dir vielleicht iframes überlegen - die haben bei bedarf auch scroll-balken und die sub-seiten sind einfacher zu warten, weil sie in eigenen dateien sind.
|
Nurmi
OC Addicted
|
nönö des san nur 4 layers und da ändert sich eh nie was außerdem hasse ich layers aber wenns verlangt werden
|
atrox
in fairy dust... I trust!
|
hab jetzt (leider?) kein ie60 zum testen... aber mit ie55 gehts auch - hast du schon den Layer1-bug ausgebessert ?
btw.. der code würde so netter aussehen:
function showHideLayers(LayerName) { for (x=1;x<5;x++) document.getElementById('Layer'+x).style.visibility = 'hidden'; document.getElementById(LayerName).style.visibility = 'visible'; }
ahh.. jetzt wo ich den code sehe... argl.. versuch doch statt style.visibility doch lieber style.display='none'; bzw.. 'block'... visibility ist eigentlich noch aus NS40 zeiten. also im klartext:
function showHideLayers(LayerName) { for (x=1;x<5;x++) document.getElementById('Layer'+x).style.display = 'none'; document.getElementById(LayerName).style.display = 'block'; }
|
Nurmi
OC Addicted
|
hehe ich nehme einfach mal an daß sich das JS weigert am localen testserver zu funken - und sei froh daßt den IE 6.0 ned hast der nervt eh nur aber downgrade geht halt nicht
|
watchout
Legendundead
|
hehe ich nehme einfach mal an daß sich das JS weigert am localen testserver zu funken - und sei froh daßt den IE 6.0 ned hast der nervt eh nur aber downgrade geht halt nicht hmm - ich bezweifle dass du eine ahnung hast wovon du redest... javascripts habn nix mit dem server zu tun... @atrox: wollt ich auch grad vorschlagen - beides ps: das vom nurmi (das komplette...) geht bei mir ohne mucken unter ie6.0 sowohl ohne webserver als auch mit pps: iframes sind net nur wegen der leichteren wartung besser - sondern sie würden auch ohne javascript funktn
|