美文网首页
小技巧 获取对象到body的距离

小技巧 获取对象到body的距离

作者: 小焲 | 来源:发表于2017-08-26 23:49 被阅读0次

    在日常使用过程中,我们有时候总要获取元素的位置,并进行操作。而js下提供的offsetTop和offsetLeft只能获取到父级的坐标。那么当我们需要得到对象的绝对位置怎么办呢?特别是页面存在滚动的时候。

    function getoffset(obj) {
        var json = {
            left:0,
            top:0
        };
        while(obj!==document.body){
            json.left += obj.offsetLeft;
            json.top += obj.offsetTop;
            obj = obj.offsetParent;
        }
        return json;
    }
    

    我们看到上面这个封装的函数,通过while循环,从对象开始往外找父级直到找不到父级,即找到body为止,然后将每一个对象相对于其父级的距离加起来,那么得到的就是我们所需对象的绝对距离。

    相关文章

      网友评论

          本文标题:小技巧 获取对象到body的距离

          本文链接:https://www.haomeiwen.com/subject/gmavdxtx.html