我正在尝试创建一个使用悬停来上下移动导航按钮的导航。当我点击选择一个按钮,我希望悬停停止,这是有效的。当我在导航中选择另一个按钮时,如何绑定悬停动画?截至目前,它仍然无限制,点击时所有按钮都变为无界限。一个foreach()?
自从我使用jQuery并需要一点帮助以来已经有一段时间了。
另外,我首先使用mouseOver()和mouseOut()并读取悬停最好使用。这是对的吗?
让小提琴正确运行,这样可以在不使用图像的情况下提供更好的主意。 http://jsfiddle.net/cs_what/WP9TT/
答案 0 :(得分:2)
事件委托可以轻松完成。
google.load("jquery", "1.6.2");
google.setOnLoadCallback(function(){
$(".horzNavigation").delegate("ul > li > a:not(.active)",{
"mouseenter": function(){
$(this).stop(true,true).animate({"top": "-=60px"}, 250, 'swing');
},
"mouseleave": function(){
$(this).stop(true,true).animate({"top": "+=60px"}, 250, 'swing');
}
}).delegate("ul > li > a","click",function(event){
$(this).addClass('active').parent().siblings().children('.active').removeClass('active');
});
});
另外,我假设您的代码中有拼写错误,ul
元素无法直接包含锚标记,因此我在li
标记中添加了选择符。无效的html在不同的浏览器中可能会产生不一致的结果。