981377660LMT / ts

ts学习
6 stars 1 forks source link

getBoundingClientRect #410

Open 981377660LMT opened 9 months ago

981377660LMT commented 9 months ago

getBoundingClientRect方法返回一个DOMRect对象,这个对象包含了一组描述元素布局的矩形的只读属性。这些属性包括:

(x,y):元素的原点。 width:元素的宽度,等于right - left。 height:元素的高度,等于bottom - top。 left:元素左边界距离视口左边的距离。 top:元素上边界距离视口顶部的距离。 right:元素右边界距离视口左边的距离。 bottom:元素下边界距离视口顶部的距离。 这些值都是相对于视口的,不包括任何滚动偏移。如果你需要考虑滚动偏移,可以使用window.scrollX和window.scrollY(或者window.pageXOffset和window.pageYOffset)来获取滚动的距离,然后加到left和top上。

例如:

let rect = element.getBoundingClientRect();
let left = rect.left + window.scrollX;
let top = rect.top + window.scrollY;

这样得到的left和top就是元素左上角相对于整个文档的位置。

981377660LMT commented 9 months ago

DOMRect 从其父类 DOMRectReadOnly 继承属性。不同之处在于它们不再是只读的。