對不起,如果我打擾你這個愚蠢的問題。我是一個編程/ jQuery新手,我有一個問題,使用多個動畫方法和回調函數的元素使用stop()。爲什麼stop()會使動畫重複?
請參考我在這裏所做的:http://cdpn.io/sBbJw
$(document).ready(function(){
$("button").click(function(){
$("div").animate({height:'300px',opacity:'0.8'}, 2000);
$("div").animate({width:'300px',opacity:'0.6'}, 2000);
$("div").animate({height:'100px',opacity:'0.4'},2000);
$("div").animate({width:'100px',opacity:'0.2'},2000, function() {
alert("Have a nice day !");
});
});
$("#done").click(function() {
$("div").stop();
});
});
HTML:
<button>Start Animation</button>
<button id="done">Stop Animation</button>
<br/><br/>
<div></div>
停止()使得動畫和回調函數重複2次,當你只需點擊 「停止」按鈕一次。我做錯了什麼?
嘛,你要綁定的第一個事件處理程序** **兩個按鈕元素。即當你點擊'#done'按鈕時,兩個事件處理程序都會被執行。所以,問題不是'.stop',這是你如何綁定處理程序。 –
這只是因爲您分配了2個點擊事件,每個按鈕元素一個,第二個點擊ID爲#done的按鈕。 – sunpietro