Anna: Positionierung und DOM

Hallo,

nachfolgendes Script positioniert eine beliebige Ebene immer in der Mitte des Fensters. Netscape 4.x, Explorer 4 (document.all) und Netscape 6+ brauchen jeweils browserspezifischen Code. ( Oder? )

Gibt es eine entsprechende ( browserübergreifende ) schreibweise nach DOM-Regeln ?

Bin für ausführliche && verständliche Quellen bezüglich DOM sehr dankbar.

Gruss aus HH

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
var ns = (document.layers) ? 1:0;
var ie = (document.all) ? 1:0;
var nn = (document.getElementById && !ie) ? 1:0;
var dom = (document.getElementById) ? 1:0;
function positioniere_ebene()
{
if (ns)
{
ebene = document.ebene01;
ebene.left = pageXOffset+window.innerWidth/2-ebene.clip.width/2;
ebene.top = pageYOffset+window.innerHeight/2-ebene.clip.height/2;
}
if (ie)
{
ebene = document.all.ebene01;
ebene.style.pixelLeft = document.body.scrollLeft+document.body.clientWidth/2-ebene.offsetWidth/2;
ebene.style.pixelTop = document.body.scrollTop+document.body.clientHeight/2-ebene.offsetHeight/2;
}
if (nn)
{
ebene = document.getElementById('ebene01');
ebene.style.left = pageXOffset+window.innerWidth/2-ebene.offsetWidth/2;
ebene.style.top = pageYOffset+window.innerHeight/2-ebene.offsetHeight/2;
}
if (dom)
{
ebene = document.getElementById('ebene01');
ebene.style.left = ???;
ebene.style.top = ???;
}
}
window.onload = positioniere_ebene;
//-->
</SCRIPT>

  1. Hallo Anna,

    Gibt es eine entsprechende ( browserübergreifende ) schreibweise nach DOM-Regeln ?

    Du kannst im Prinzip alles nach DOM machen, bei Forms auch mit document.form.element, es funktioniert dann halt nicht in alten Browsern. Die Frage ist eher, ob man alte Browser weiterhin beachten soll. Diese Frage wird hier immer wieder diskutiert. Fuer mein Gefuehl ist es Zeit, die alten Zoepfe endlich abzuschneiden und nur noch nach DOM zu schreiben. Ausnahme: wenn Du kommerziell arbeitest und du findest einen Kunden, der unbedingt fuer NS4 Unterstuetzung Geld ausgeben will, bittesehr.

    Dieter