文章内容
2022/12/22 9:32:25,作 者: 黄兵
JavaScript 获取元素的位置
可以使用 JavaScript 的 getBoundingClientRect()
方法来获取元素的位置信息,然后取出 left 和 top 属性即可。下面是一个例子:
let element = document.querySelector('.info'); let rect = element.getBoundingClientRect(); let left = rect.left; let top = rect.top;
注意,getBoundingClientRect()
返回的是元素相对于浏览器窗口的坐标,如果需要相对于整个文档的坐标,可以使用 pageXOffset
和 pageYOffset
来获取文档滚动的距离,然后加上即可。
let element = document.querySelector('.info'); let rect = element.getBoundingClientRect(); let left = rect.left + window.pageXOffset; let top = rect.top + window.pageYOffset;
注意,如果元素的父元素有设置了定位样式(如 position: relative
),那么 getBoundingClientRect()
返回的坐标会相对于父元素的坐标系,因此需要递归的计算父元素的坐标。
评论列表