gpt4 book ai didi

javascript - jquery 偏移量增加 .hide() 上的先前值

转载 作者:行者123 更新时间:2023-12-03 08:50:36 25 4
gpt4 key购买 nike

使用 jquery.offset() 设置位置的行为不符合我的预期。我的示例代码尝试在悬停时将一个 div (.slide) 与另一个 (.active) div 重叠。我理解 offset({top,left}} 将元素的位置设置为 {top, left} 但它每次都会将位置增加这个量。

作为练习 - 如果我将事件 block 设置为 display:block 并删除 active.hide() 语句,则定位将按我的预期工作。 .hide() 似乎导致偏移累积。我非常感谢任何指导。

http://jsfiddle.net/laurencefass/q815mqkm/

$(".slide").mouseenter(function (e) {
$(this).css("background-color", "red");
offset = $(this).offset();
}

更多代码请点击链接...

最佳答案

看到这个 fiddle 刚刚编辑了您的代码,任何覆盖 div 都将位于悬停的 div 之上。我想这就是你想要的。看到这个updated fiddle 。在您的代码中,您设置了 top:1 和 left:1 ,这对于所有 div 来说并不正确,因为它们都位于不同的位置,您需要使用它们的偏移量,而不是每次都使用 1 和 1 并且设置偏移量是定义为设置元素的坐标(位置),以便使其工作,元素应该在第一个实例中可见以设置其坐标

 active.show(); //show the div first and then set the offset
active.offset({
top: offset.top,
left: offset.left
});

关于javascript - jquery 偏移量增加 .hide() 上的先前值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32693454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com