Если на странице есть - по крайней мере, любой «DIV», функция, заданная meouw, выдает значение «Y» за пределы текущей страницы. Чтобы найти точную позицию, вам нужно обрабатывать как offsetParent, так и parentNode.
Попробуйте приведенный ниже код (он проверяется на FF2):
var getAbsPosition = function(el){
var el2 = el;
var curtop = 0;
var curleft = 0;
if (document.getElementById || document.all) {
do {
curleft += el.offsetLeft-el.scrollLeft;
curtop += el.offsetTop-el.scrollTop;
el = el.offsetParent;
el2 = el2.parentNode;
while (el2 != el) {
curleft -= el2.scrollLeft;
curtop -= el2.scrollTop;
el2 = el2.parentNode;
}
} while (el.offsetParent);
} else if (document.layers) {
curtop += el.y;
curleft += el.x;
}
return [curtop, curleft];
};