使用.position和css position: relative不能正常工作



我有一个不能正常工作的菜单。看看这段代码:http://jsfiddle.net/PX9nU/1/

#menu li上,如果我将position: relative留在原地,当您悬停时,控制台将在所有菜单项中记录左0。如果我删除position: relative,它将记录每个项目的期望正确的左值。

我需要position: relative在适当的地方为子菜单正确格式化,但我需要左值正确输出一些动画,我试图实现。

-为什么左边没有返回position: relative的预期值?

-是否有另一种方法来获得每个项目的左值,因为它们悬停在上面?

问题是你的jQuery选择器。您正在使用$('#menu li .item')进行选择,这将返回链接元素。对它们调用position()将给出它们在父元素(即封闭LI)中的位置,在每种情况下LI都是0,0。我认为您需要封闭LI在其UL中的位置,您可以通过以下方式获得:

p = $(this).parent().position();

最新更新