DataFox
Erfahrenes Mitglied
Hi Leute
ich habe eine Funktion mit der ich die xy-Koordinaten eines Elements ermitteln kann, was für Layout-Sachen sehr hilfreich sein kann. Na ja. Also das Ding sieht so aus:
Im Firefox stimmen die Koordinaten, egal wie tief das Element verschachtelt ist und wie es positioniert wurde. Ich will immer die Koordinaten zur Ecke oben links im Browser, also absolut.
Der Internet-Explorer liefert mir da ganz seltsame werte. Vermute mal nur die Abweichung zum Nachbar-Element (relative Position). Hat jemand eine Idee was an dem obigen Code dem MSIE nicht schmeckt
ich danke euch vielmals!
Gruß
Laura
ich habe eine Funktion mit der ich die xy-Koordinaten eines Elements ermitteln kann, was für Layout-Sachen sehr hilfreich sein kann. Na ja. Also das Ding sieht so aus:
Code:
<div id="infoMSG"></div>
<b style="position:absolute;top:200px;left:100px;"><i><u><div id="irgendeinelement" style="position:absolute;top:50;left:50;">irgend ein element</div></u></i></b>
<script type="text/javascript">
getElementCoords(document.getElementById('irgendeinelement'));
// X/Y Koordinaten eines Elements ermitteln
function getElementCoords(eo){
if(eo){
var coords = {x: 0, y: 0};
var i = 0;
var eo_original = eo;
do {
i++;
if(eo.currentStyle){
if(eo.currentStyle.position!='relative'){
coords.x += eo.offsetLeft;
coords.y += eo.offsetTop;
}
} else {
coords.x += eo.offsetLeft;
coords.y += eo.offsetTop;
}
eo = eo.offsetParent;
} while(eo);
document.getElementById('infoMSG').innerHTML = eo_original.tagName + ' xy coords: ' + coords.x + ', ' + coords.y + ' depth: ' + i;
return coords;
} else {
return null;
}
}
</script>
Im Firefox stimmen die Koordinaten, egal wie tief das Element verschachtelt ist und wie es positioniert wurde. Ich will immer die Koordinaten zur Ecke oben links im Browser, also absolut.
Der Internet-Explorer liefert mir da ganz seltsame werte. Vermute mal nur die Abweichung zum Nachbar-Element (relative Position). Hat jemand eine Idee was an dem obigen Code dem MSIE nicht schmeckt
ich danke euch vielmals!
Gruß
Laura