这是我目前的代码,
$("#mobile-menu").toggle(function(){
$("#nav").animate({height:460},500);
},function(){
$("#nav").animate({height:65},500);
});
我在不同的网站上有一个非常相似的设置,当点击$("#mobile-menu")
以增加#nav标签的高度时,它会起作用,但在这种情况下,当页面加载并导致元素动画消失时,代码才开始运行。
我在这里错过了什么?谢谢你
更新这是我更新的代码,仍然没有如期工作,元素只是消失了。现在如何使用新的jQuery库来完成呢?
$('#mobile-menu').click(function() {
$("#nav").toggle(function(){
$(this).animate({height:460},500);
},function(){
$(this).animate({height:65},500);
});
});
您的其他代码可能使用旧版本的jQuery。这个版本的toggle
在1.8中被弃用,在1.9中被删除。这可能是另一个toggle
被调用的结果。
切换事件(在1.9中删除)
切换效果
正如前面的回答所说,这是取消对toggle(function(){}, function(){})的支持的结果
var $nav = $("#nav");
$('#mobile-menu').click(function() {
var toggle = $nav.data('toggle-state');
$nav.stop().animate({
height: toggle ? 460 : 65
}, 500);
$nav.data('toggle-state', !toggle);
});
演示:小提琴