Thomas Ludewig: MAC IE macht probleme

ich benötige für einen bestimmten effekt
2 sachen : einmal einen bereich positionieren das mach ich so:

//if(document.layers) //Netscape 4.xx
       //{
       // move the element with id to x,y
       // where x,y are the horizontal
       // and vertical position in pixels

var elm = null;
       if (document.getElementById)
       {
         // browser implements part of W3C DOM HTML
         // Gecko, Internet Explorer 5+, Opera 5+
         elm = document.getElementById(id);
       }

else if (document.all)
       {
         // Internet Explorer 4 or Opera with IE user agent
         elm = document.all[id];
       }

else if (document.layers)
       {
         // Navigator 4
         elm = document.layers[id];
       }

if (!elm)
       {
         // browser not supported or element not found
       }
       else if (elm.style)
       {
         // browser implements part of W3C DOM Style
         // Gecko, Internet Explorer 4+, Opera 5+

if (typeof(elm.style.left) == 'number')
         {
           // Opera 5/6 do not implement the standard correctly
           elm.style.left = x;
           elm.style.top  = y;
         }
         else
         {
           // Gecko/Internet Explorer 4+
           elm.style.left = x + 'px';
           elm.style.top  = y + 'px';
         }
       }
       else if (typeof(elm.left) == 'number')
       {
         // Navigator 4
         elm.left = x;
         elm.top  = y;
       }
     }

was auch wunderbar funktioniert
von os2 über linux bis windows

was hingegen im MAC IE NICHT tut ist folgendes:

if (document.all) //IE 4-6
  {

if (on==1){
      document.all[id_1].style.visibility='visible'
      document.all[id_2].style.visibility='hidden'
      document.all[id_3].style.visibility='visible'
      document.all[id_4].style.visibility='hidden'
    }
    else{
      document.all[id_1].style.visibility='hidden'
      document.all[id_2].style.visibility='visible'
      document.all[id_3].style.visibility='hidden'
      document.all[id_4].style.visibility='visible'
    }
  }

else if (document.layers) //Netscape 4.xx
  {

if (on==1){
      obj=document.layers[id_1];if (obj){obj.visibility='visible'}
      obj=document.layers[id_2];if (obj){obj.visibility='hidden'}
      obj=document.layers[id_3];if (obj){obj.visibility='visible'}
      obj=document.layers[id_4];if (obj){obj.visibility='hidden'}
    }
    else{
      obj=document.layers[id_1];if (obj){obj.visibility='hidden'}
      obj=document.layers[id_2];if (obj){obj.visibility='visible'}
      obj=document.layers[id_3];if (obj){obj.visibility='hidden'}
      obj=document.layers[id_4];if (obj){obj.visibility='visible'}

}
  }

else if (document.getElementById) //Netscape6 / Mozilla +
    {
    if (on==1){
      document.getElementById(id_1).style.visibility='visible'
      document.getElementById(id_2).style.visibility='hidden'
      document.getElementById(id_3).style.visibility='visible'
      document.getElementById(id_4).style.visibility='hidden'
    }
    else{

document.getElementById(id_1).style.visibility='hidden'
      document.getElementById(id_2).style.visibility='visible'
      document.getElementById(id_3).style.visibility='hidden'
      document.getElementById(id_4).style.visibility='visible'
    }
  }
}

Fehlermeldungen gibts zwar keine (angeblich)
nur die folien sichtbar / unsichtbar schaltet er NICHT

für sachdienliche hinweise wär ich dankbar :)
Grüße
Thomas

IE MAC hülfe !

  1. Da gibt's mal wieder den Nachteil, dass sich nicht alle Browser standardisieren lassen wollen, bei manchen Browsern gibt es in css nicht "visibility", sondern nur "visible", und die Werte dafür lauten dann auch nicht mehr "visible" und "hidden", sondern true oder false!
    Viel Spaß bei der Fallunterscheidung! ;-)

    Marc Reichelt || www.marcreichelt.de
    Rückfragen bitte an: