stop方法可以稱得上是以下區別方法:
.stop(true);
//Same as:
.stop(true, false); //Empty the animation queue only
//Or
.stop(true,true); // Empties the animation queue AND jumps to the end
//Default
.stop()
//Same as
.stop(false,false);
有可能是使用.animate而不是一種更好的方式:Demo Here
$(function() {
$('#fade')
.mouseenter(function() {
$('#fg_fade').stop().css('height', '10em').animate({'opacity' : '0'}, 'slow');
})
.mouseleave(function() {
$('#fg_fade').stop().css('height', '10em').animate({'opacity' : '1'}, 'slow');
});
$('#slide_fire')
.mouseenter(function() {
$('#fg_fade').stop().css('opacity', '1').animate({'height' : '0'}, 'slow');
})
.mouseleave(function() {
$('#fg_fade').stop().css('opacity', '1').animate({'height' : '10em'}, 'slow');
});
});
這樣動畫在你想要的時候停下來,仍然運行下一個動畫。
.stop
然後slideUp/slideDown
或fadeIn/fadeOut
的問題是動畫可能會過早地結束並保持不正確的高度/不透明度。
我一直以爲stop()會殺死隊列。 – dotty