MAC IE macht probleme
Thomas Ludewig
- dhtml
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 !
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: