使用.position和css位置:相对不按预期工作

时间:2011-12-21 02:19:04

标签: javascript css

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

#menu li上,如果我离开position: relative,控制台会在您悬停时在所有菜单项中记录左侧0。如果我删除position: relative,它会记录每个项目的预期正确左值。

我需要position: relative以便子菜单正确格式化,但我需要左值来正确输出我想要实现的动画。

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

- 还有另一种方法可以在每个项目悬停时获得左侧值吗?

1 个答案:

答案 0 :(得分:1)

问题是你的jQuery选择器。您正在选择$('#menu li .item'),它会返回链接元素。在那些上调用position()会在其父元素中给出它们的位置,即封闭的LI,在每种情况下都是0,0。我想你想要封闭的LI在其UL中的位置,你可以这样做:

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