javascript权威指南中的三个获得元素位置的函数
1. 获得一个元素绝对位置的函数function``getAbsPoint()
//获得一个html对象的绝对位置
function getAbsPoint(e){
var x = e.offsetLeft;
var y = e.offsetTop;
while(e = e.offsetParent){
x += e.offsetLeft;
y += e.offsetTop;
}
return {"x": x, "y": y};
}
其中的e参数为元素对象通常是用document . getElementById()获得。
2. 获得鼠标的位置:
function mousePosition(ev){
if(ev.pageX || ev.pageY){
return {x:ev.pageX, y:ev.pageY};
}
return {
x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,y:ev.clientY + document.body.scrollTop - document.body.clientTop
};
}
3. 获得元素距离顶部的距离
function getOffset(field,attr)
{
var offset = 0;
while(field)
{
offset += field\[attr\];
field = field.offsetParent;
}
return offset;
}
//距离顶部的距离
function getOffsetTop(field)
{
return getOffset(field,"offsetTop");
}