これがフィドルです:
ボタンをすばやくクリックすると、アニメーションが途中で一時停止します。これはstop()関数の問題だと思いますが、修正する方法が見つかりません。ちなみに、私はstopを使用して、jQueryがすべてのスライドアニメーションをキューに入れないようにしています。
試す:
$('a').toggle(function() {
$('div').stop(1,1).slideUp()
}, function() {
$('div').stop(1,1).slideDown()
})
stopメソッドのclearQueueプロパティとjumpToEndプロパティをtrueに設定します。
toggle()
非推奨です。試すことができますslideToggle()
:
$('a').click(function(e) {
e.preventDefault();
$('div').stop(true,true).slideToggle()
})