我正在为网站制作导航,并希望按钮的行为如下:
这是我的jQuery代码:
$(document).ready(function(){
$('#navigation a').not(".active")
.mouseover(function(){
$(this).stop().animate(
{top:"-10px"},
{duration:200}
)
})
.mouseout(function(){
$(this).stop().animate(
{top:"0px"},
{duration:200}
)
})
.click(function(){
$('#navigation a.active').animate(
{top:"0px"},
{duration:200}
)
$('#navigation a').removeClass("active");
$(this).addClass("active");
$(this).stop().animate(
{top:"-40px"},
{duration:200}
)
})
});
一切似乎都有效,并且正在正确地给出和删除课程。唯一的问题是not()方法会阻止初始活动按钮,而不是那些稍后使用addClass()获得该类的人。
答案 0 :(得分:0)
更改
$('#navigation a').not(".active")
.mouseover(function(){
// ...
}).mouseout(function() {
// ...
}).click(function() {
// ...
});
$('#navigation').on('mouseover', 'a:not(.active)', function(){
// ...
}).on('mouseout', 'a:not(.active)', function(){
// ...
}).on('click', 'a:not(.active)', function(){
// ...
});
或更短:
$('#navigation').on({
'mouseover': function(){
// ...
},
'mouseout': function(){
// ...
},
'click': function(){
// ...
}
}, 'a:not(.active)');