2011-08-30 77 views
0

我想使用jQuery在菜单项上滑动箭头,将鼠标悬停在它们上方。jQuery自动元素定位

你需要知道的是,菜单是在UL元素与项目,文字居中,文本对齐:中心

箭头处于DIV高于ul。在这一DIV,称为“箭头容器”是另一个DIV,称为“箭头”

箭头容器相对定位,并箭头定位绝对的。

一切都是1000像素宽

在此先感谢您的帮助!

jQuery arrow

请让它很清楚,我想箭头滑动,使用.animate(),而不是让它弹出菜单项

回答

1

我会做以上这条路。通过$('#target').position(),您可以获取元素相对于其父元素的相对坐标的对象。添加元素宽度的一半,减去箭头宽度的一半应将箭头放在目标元素中间的上方。

$('.menuElement').mouseenter(function() { 
    $('#arrow').stop().animate({ 
    left: $(this).position().left+$(this).width()/2-$('#arrow').width()/2 
    },{ 
    duration: 500, 
    easing: 'swing' 
    }); 
}); 
+0

工作就像一个魅力:-)我在想同样的,但我忘了.position() – zeta