1.获取元素在文档上的坐标
function DocuemntHtmlPageXY (elem) {
var rect = elem.getBoundingClientRect();
var scrollTop = window.scrollTop || (document.documentElement && document.documentElement.scrollTop) || document.body.scrollTop || 0;
var scrollLeft = window.scrollLeft || (document.documentElement && document.documentElement.scrollLeft) || document.body.scrollLeft || 0;
var html = document.documentElement || document.getElementsByTagName_r(‘html’😉[0];
//修复ie6 7 下的浏览器边框也被算在 boundingClientRect 内的 bug
var deviation = html.getBoundingClientRect();
//修复 ie8 返回 -2 的 bug
deviation = { //FF 不允许修改返回的对象
left: deviation.left < 0 ? 0 : deviation.left,
top: deviation.top < 0 ? 0 : deviation.top
};
return {
left: rect.left + scrollLeft – deviation.left,
top: rect.top + scrollTop – deviation.top
};
}
2.举例如下:
var divElem = document.getElementById(‘useDiv’😉;
var pageXY = DocuemntHtmlPageXY(divElem);
alert(pageXY.left);
本文内容由互联网用户自发贡献,该文观点仅代表作者本人。聚才发仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 tenspace2022@163.com 举报,一经查实,本站将立刻删除。 本文链接:https://www.jucaifa.com/post/1099537.html