偏移方法是否会首先设置除静态之外的元素位置,因为它正在设置元素的坐标,这只有在元素定位为静态以外时才有可能。它在内部如何工作?我是 jquery 的初学者
$("p:last").offset({ top: 10, left: 30 });
偏移方法是否会首先设置除静态之外的元素位置,因为它正在设置元素的坐标,这只有在元素定位为静态以外时才有可能。它在内部如何工作?我是 jquery 的初学者
$("p:last").offset({ top: 10, left: 30 });
如果您查看源代码,您会发现它确实将static
元素更改为relative
.
// Set position first, in-case top/left are set even on static elem
if ( position === "static" ) {
elem.style.position = "relative";
}
该函数只是编辑所有匹配元素的样式属性。属性位置设置为相对,属性 top 和 left 采用您分配给它们的值。
你可以通过调用这个来达到同样的效果:
$("p:last").css("position", "relative").css("top", 10).css("left", 30);
使用 position() 方法,您可以获得(但不能设置)相对于父元素的坐标。