原创

使用js实现 jquery 中 offset() 方法

使用jQuery中的offset()的方法 offset().top或offset().left很方便地取得元素相对于整个页面的偏移,而js不能获得绝对偏移,因此采用节点递归的方式来获得绝对偏移,代码具体如下:

function getOffset(Node, offset) {
    if (!offset) {
offset = {};
offset.top = 0;
offset.left = 0;
    }
    //当该节点为body节点时,结束递归
    if (Node == document.body) {
return offset;
    }
    offset.top += Node.offsetTop;
    offset.left += Node.offsetLeft;
    return getOffset(Node.parentNode, offset);
}

使用方式如下:

var a = document.getElementById('a');
getOffset(a).top
getOffset(a).left
~阅读全文-人机检测~

微信公众号“Java精选”(w_z90110),专注Java技术干货分享!让你从此路人变大神!回复关键词领取资料:如Mysql、Hadoop、Dubbo、Spring Boot等,免费领取视频教程、资料文档和项目源码。微信搜索小程序“Java精选面试题”,内涵3000+道Java面试题!

涵盖:互联网那些事、算法与数据结构、SpringMVC、Spring boot、Spring Cloud、ElasticSearch、Linux、Mysql、Oracle等

评论

分享:

支付宝

微信