Sabine: Ebenenverschiebung bei Untermenue im IE

Help!Help!Help! Habe eine Navigationsleiste mit verstecktem Untermenue auf Ebenen und  im IE  werden mir die Ebenen jedesmal ganz nach oben über die Navigation oder ganz nach unten verschoben. Probiere jetzt schon 2 Tage lang und verzweifel bald. Wer kennt das Problem und hilft mir?

Anbei  der Quelltext <html> <head> <title>Dropdown</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <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 MM_findObj(n, d) { //v4.0   var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {     d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}   if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);   if(!x && document.getElementById) x=document.getElementById(n); return x; }

function MM_showHideLayers() { //v3.0   var i,p,v,obj,args=MM_showHideLayers.arguments;   for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];     if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }     obj.visibility=v; } }

function MM_timelinePlay(tmLnName, myID) { //v1.2   //Copyright 1997 Macromedia, Inc. All rights reserved.   var i,j,tmLn,props,keyFrm,sprite,numKeyFr,firstKeyFr,propNum,theObj,firstTime=false;   if (document.MM_Time == null) MM_initTimelines(); //if very 1st time   tmLn = document.MM_Time[tmLnName];   if (myID == null) { myID = ++tmLn.ID; firstTime=true;}//if new call, incr ID   if (myID == tmLn.ID) { //if Im newest     setTimeout('MM_timelinePlay("'+tmLnName+'",'+myID+')',tmLn.delay);     fNew = ++tmLn.curFrame;     for (i=0; i<tmLn.length; i++) {       sprite = tmLn[i];       if (sprite.charAt(0) == 's') {         if (sprite.obj) {           numKeyFr = sprite.keyFrames.length; firstKeyFr = sprite.keyFrames[0];           if (fNew >= firstKeyFr && fNew <= sprite.keyFrames[numKeyFr-1]) {//in range             keyFrm=1;             for (j=0; j<sprite.values.length; j++) {               props = sprite.values[j];               if (numKeyFr != props.length) {                 if (props.prop2 == null) sprite.obj[props.prop] = props[fNew-firstKeyFr];                 else        sprite.obj[props.prop2][props.prop] = props[fNew-firstKeyFr];               } else {                 while (keyFrm<numKeyFr && fNew>=sprite.keyFrames[keyFrm]) keyFrm++;                 if (firstTime || fNew==sprite.keyFrames[keyFrm-1]) {                   if (props.prop2 == null) sprite.obj[props.prop] = props[keyFrm-1];                   else        sprite.obj[props.prop2][props.prop] = props[keyFrm-1];         } } } } }       } else if (sprite.charAt(0)=='b' && fNew == sprite.frame) eval(sprite.value);       if (fNew > tmLn.lastFrame) tmLn.ID = 0;   } } }

function MM_timelineStop(tmLnName) { //v1.2   //Copyright 1997 Macromedia, Inc. All rights reserved.   if (document.MM_Time == null) MM_initTimelines(); //if very 1st time   if (tmLnName == null)  //stop all     for (var i=0; i<document.MM_Time.length; i++) document.MM_Time[i].ID = null;   else document.MM_Time[tmLnName].ID = null; //stop one }

function MM_timelineGoto(tmLnName, fNew, numGotos) { //v2.0   //Copyright 1997 Macromedia, Inc. All rights reserved.   var i,j,tmLn,props,keyFrm,sprite,numKeyFr,firstKeyFr,lastKeyFr,propNum,theObj;   if (document.MM_Time == null) MM_initTimelines(); //if very 1st time   tmLn = document.MM_Time[tmLnName];   if (numGotos != null)     if (tmLn.gotoCount == null) tmLn.gotoCount = 1;     else if (tmLn.gotoCount++ >= numGotos) {tmLn.gotoCount=0; return}   jmpFwd = (fNew > tmLn.curFrame);   for (i = 0; i < tmLn.length; i++) {     sprite = (jmpFwd)? tmLn[i] : tmLn[(tmLn.length-1)-i]; //count bkwds if jumping back     if (sprite.charAt(0) == "s") {       numKeyFr = sprite.keyFrames.length;       firstKeyFr = sprite.keyFrames[0];       lastKeyFr = sprite.keyFrames[numKeyFr - 1];       if ((jmpFwd && fNew<firstKeyFr) || (!jmpFwd && lastKeyFr<fNew)) continue; //skip if untouchd       for (keyFrm=1; keyFrm<numKeyFr && fNew>=sprite.keyFrames[keyFrm]; keyFrm++);       for (j=0; j<sprite.values.length; j++) {         props = sprite.values[j];         if (numKeyFr == props.length) propNum = keyFrm-1 //keyframes only         else propNum = Math.min(Math.max(0,fNew-firstKeyFr),props.length-1); //or keep in legal range         if (sprite.obj != null) {           if (props.prop2 == null) sprite.obj[props.prop] = props[propNum];           else        sprite.obj[props.prop2][props.prop] = props[propNum];       } }     } else if (sprite.charAt(0)=='b' && fNew == sprite.frame) eval(sprite.value);   }   tmLn.curFrame = fNew;   if (tmLn.ID == 0) eval('MM_timelinePlay(tmLnName)'); }

function MM_initTimelines() { //v4.0     //MM_initTimelines() Copyright 1997 Macromedia, Inc. All rights reserved.     var ns = navigator.appName == "Netscape";     var ns4 = (ns && parseInt(navigator.appVersion) == 4);     var ns5 = (ns && parseInt(navigator.appVersion) > 4);     document.MM_Time = new Array(1);     document.MM_Time[0] = new Array(2);     document.MM_Time["menuaus"] = document.MM_Time[0];     document.MM_Time[0].MM_Name = "menuaus";     document.MM_Time[0].fps = 15;     document.MM_Time[0][0] = new String("behavior");     document.MM_Time[0][0].frame = 20;     document.MM_Time[0][0].value = "MM_showHideLayers('Untermenue1','','hide')";     document.MM_Time[0][1] = new String("behavior");     document.MM_Time[0][1].frame = 15;     document.MM_Time[0][1].value = "MM_showHideLayers('untermenue2','','hide','unterebene3','','hide')";     document.MM_Time[0].lastFrame = 20;     for (i=0; i<document.MM_Time.length; i++) {         document.MM_Time[i].ID = null;         document.MM_Time[i].curFrame = 0;         document.MM_Time[i].delay = 1000/document.MM_Time[i].fps;     } } //--> </script> </head>

<body bgcolor="#cccccc" text="#000000" leftmargin="100" topmargin="100" marginwidth="100" marginheight="100"> <div id="Untermenue1" style="position:absolute; left:101px; top:168px; width:198px; height:100px; z-index:1; visibility: hidden">   <p><font face="Verdana, Arial, Helvetica, sans-serif"><a href="#" onMouseOver="MM_timelineStop('menuaus');MM_showHideLayers('untermenue2','','show')" onMouseOut="MM_timelinePlay('menuaus');MM_timelineGoto('menuaus','1')">Sony</a></font></p>   <p><font face="Verdana, Arial, Helvetica, sans-serif"><a href="#" onMouseOver="MM_timelineStop('menuaus');MM_showHideLayers('unterebene3','','show')" onMouseOut="MM_timelineGoto('menuaus','1');MM_timelinePlay('menuaus')">Telekom</a></font></p>   <p><font face="Verdana, Arial, Helvetica, sans-serif">Bosch</font></p>   <p> </p> </div> <div id="untermenue2" style="position:absolute; left:172px; top:171px; width:201px; height:71px; z-index:2; visibility: hidden">   <p><a href="#" onMouseOver="MM_timelineStop('menuaus')" onMouseOut="MM_timelinePlay('menuaus');MM_timelineGoto('menuaus','1')">Handy</a></p>   <p>HiFi</p> </div> <div id="unterebene3" style="position:absolute; left:189px; top:301px; width:174px; height:74px; z-index:3; visibility: hidden">   <p><a href="http://www.web.de" onMouseOver="MM_timelineStop('menuaus')" onMouseOut="MM_timelineGoto('menuaus','1');MM_timelinePlay('menuaus')">T-DSL</a></p>   <p> </p> </div> <table width="600" border="0" cellspacing="0" cellpadding="0" height="50">   <tr>     <td width="200"><font face="Verdana, Arial, Helvetica, sans-serif"><b><font size="4"><a href="#" onMouseOver="MM_showHideLayers('Untermenue1','','show');MM_timelineStop('menuaus')" onMouseOut="MM_timelinePlay('menuaus');MM_timelineGoto('menuaus','1')">Referenzen</a></font></b></font></td>     <td width="200"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="4">Produkte</font></b></td>     <td width="200"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="4">Kontakt</font></b></td>   </tr> </table> </body> </html>

  1. hi,

    Habe eine Navigationsleiste mit verstecktem Untermenue auf Ebenen und  im IE  werden mir die Ebenen jedesmal ganz nach oben über die Navigation oder ganz nach unten verschoben.

    die wunderbaren, vorgefertigten, höchst umständlichen und äusserst schlecht wartbaren macromedia-javascripte sind also wieder mal am werk ...

    Probiere jetzt schon 2 Tage lang und verzweifel bald.

    was probierst du seit 2 tagen?
    die funktionen und deinen html-code wirklich zu verstehen, oder probierst du nur im editor eine unmotivierte änderung nach der nächsten aus ...?

    Anbei  der Quelltext

    lies bitte mal </faq/#Q-07c>, und beachte besonders den anfang des zweiten absatzes.

    gruss,
    wahsaga

  2. Hallo, heisst das hier übrigens ;), denn ich glaube im normalen Leben würdest du auch keinen Kunden direkt mit deiner Frage belasten oder?

    das ist mal wieder typisch Dreamweaver Code, da wird Dir keiner helfen, denn den hast du ja auch nicht selber erstellt, sondern erstellen lassen. Ausserdem kenne ich viele Probleme im IE die nicht laufen wie Sie laufen sollen ;)
    Andererseits solltest du dich vielleicht mehr mit CSS auseinander setzten, wegen der Positionierung von divs usw. denn dann würdest du sicherlich auch weiter kommen. Schließlich hast du uns ja nicht verraten wo genau das Untermenü aufgehen soll! Wenn ich z.B. bei der unterebene3 top:171px; schreibe gehts genauso im IE auch oben auf wie alle anderen.

    Grüße

    Christoph (kann man hier auch sagen)

    --
    Ich bin ein spezialisz!
    (Zitat von VENGA JO)
    sh:) fo:) rl:° br:& ie:| mo:) va:) fl:) ss:| ls:< js:|
    Die Erklärung zum Selfcode findest du hier: http://emmanuel.dammerer.at/selfcode.html
    Einen Decoder für den Selfcode findest du hier: http://peter.in-berlin.de/projekte/selfcode