JavaScript获取元素位置

left = x.getBoundingClientRect().left+document.documentElement.scrollLeft;

top = x.getBoundingClientRect().top+document.documentElement.scrollTop;

代码中的x是元素。

 

设置某个元素的位置:

element.style.top= top + 'px';
element.style.left= left + 'px';

通过以上代码设置的元素位置不会因为页面放大而使页面变形。

One thought on “JavaScript获取元素位置

  • 2016年4月29日 at 下午7:10
    Permalink

    如果利用下面代码:
    //获取元素的纵坐标
    function getTop(e){
    var offset=e.offsetTop;
    if(e.offsetParent!=null) offset+=getTop(e.offsetParent);
    return offset;
    }
    //获取元素的横坐标
    function getLeft(e){
    var offset=e.offsetLeft;
    if(e.offsetParent!=null) offset+=getLeft(e.offsetParent);
    return offset;
    }

    元素的位置会因为页面放大而改变。

    Reply

发表评论

电子邮件地址不会被公开。 必填项已用*标注

18 − 8 =

− 9 = 1