NN 6/7 versteht Browserweiche NN / IE nicht
Andreas
- javascript
0 Cheatah0 Andreas0 Andreas0 Kai Lahmann0 Andreas
Hallo!
Habe zur Zeit folgende Browserweiche, da im IE und im Netscape 4.x Ebenen nicht gleich angesprochen werden können. Und zwar geht es um eine Ebene mit Links drin, und der NN4.x ist nicht in der Lage diese Ebene verschwinden zu lassen, ohne das man über einen speziellen Link mit onmouseout geht. Trotzdem wird in beiden Browsern(NN4.x und jedem IE) bei Aufruf des Javascriptes die Ebene(n) eingeblendet, nur im NN 6/7 und wahrscheinlich Mozilla auch nicht.
So sieht das Javascript aus:
var ie = document.all ? true : false;
var ns = document.layers ? true : false;
function MoveLayer()
{
if (ns) {
var pos = document.images['bild'];
with (document.Menue) {
pageX = pos.x - 20;
pageY = pos.y + 20;
visibility = 'show';
}
with (document.layer) {
pageX = pos.x - 30;
pageY = pos.y - 20;
visibility = 'show';
}
}
else if (ie) {
var pos = document.all['bild'];
with (document.all.Menue.style) {
posLeft = getLeft(pos)- 20;
posTop = getTop(pos) + 20;
visibility = 'visible';
}
with (document.all.layer.style) {
posLeft = getLeft(pos) - 30;
posTop = getTop(pos) + 20;
visibility = 'visible';
}
}
}
Wie bekomme ich es hin, das das auch im NN6/7 funktioniert?
Das habe ich in einem vorherigen Beispiel aufgeschnappt, aber wie kann ich das in meine Browserweiche integrieren?
document.getElementById("test").style.visibility = "visible";
Viele Grüße
Andreas
Hi,
var ie = document.all ? true : false;
var ns = document.layers ? true : false;
beide Techniken sind veraltet; Mozilla (und damit auch Netscape >= 6) und zukünftige Browser werden hier mit Sicherheit versagen. Prüfe auf DOM, also document.getElementById - und programmiere einen entsprechenden Teil, der darauf zugreift.
Btw, auch neuere IE-Versionen kennen DOM, Du solltest also aufpasen, dass hier nichts doppelt geschieht.
Cheatah
Hallo!
var ie = document.all ? true : false;
var ns = document.layers ? true : false;
beide Techniken sind veraltet; Mozilla (und damit auch Netscape >= 6) und zukünftige Browser werden hier mit Sicherheit versagen. Prüfe auf DOM, also document.getElementById - und programmiere einen entsprechenden Teil, der darauf zugreift.
Du bist ja lustig! Das ist mir auch klar, aber leider verwenden noch zu viele Leute die veralteten Browser, die das nunmal nicht verstehen, daher suche ich nach einer Lösung, alte NN, alte IE und neue Browser die DOM verstehen oder so ähnlich. Nur wie kann man das in einem Javascript herausbekommen, was man jetzt vor sich hat?
Btw, auch neuere IE-Versionen kennen DOM, Du solltest also aufpasen, dass hier nichts doppelt geschieht.
Ab welcher Version denn?
Viele Grüße
Andreas
Hallo!
Aber vielleicht bracuhe ich das ja doch alles nicht, denn unter http://selfhtml.teamone.de/css/eigenschaften/positionierung.htm#visibility steht, das getElementById cuh in den 4er Versionen beider Browser funktioniert! Nur habe ich jetzt keine Ahnung, wie ich das ach so schöne Javascript mit meiner Ebenen-Position relativ zu einem Image übernehmen kann. Hätte vielleicht jemand einen Tipp, wie ich
var pos = document.all['bild'];
with (document.all.Menue.style) {
posLeft = getLeft(pos)- 20;
posTop = getTop(pos) + 20;
visibility = 'visible';
}
// oder
with (document.layer) {
pageX = pos.x - 30;
pageY = pos.y - 20;
visibility = 'show';
}
umformulieren muß, damit das alle Browser ab Version 4 verstehen, also DOM?
Viele Grüße
Andreas
hi
Btw, auch neuere IE-Versionen kennen DOM, Du solltest also aufpasen, dass hier nichts doppelt geschieht.
Ab welcher Version denn?
seit Version 5.0, und damit also alle MSIE-versionen, die auch im Alltag noch in nennenswerten Mengen vorkommen.
Grüße aus Bleckede
Kai
Hallo!
Wie kann ich denn mit Javascript(bzw. DOM) einer <div> Ebene eine neue Position zuweisen, hat da jemand einen Link für mich?
Ich war froh das das jetzt gerade mit Javascript funktionerte, aber anscheinend um sonst.
Vielen Dank!
Grüße
Andreas
hi
Wie kann ich denn mit Javascript(bzw. DOM) einer <div> Ebene eine neue Position zuweisen, hat da jemand einen Link für mich?
<div id="bla">
document.getElementById("bla").style.left="37px"; usw.
Grüße aus Bleckede
Kai