幫助環回調的jQueryjQuery的幫助環回調的jQuery
誤差環路按鈕2
步驟1:單擊Button =>回調將Button2
步驟2:點擊將Button2 =>回調Button2 +回調Button2
第3步:單擊Button3 =>回調Button2 +回調Button2 +回調Button2
.....
步驟N:點擊按鈕* ň * =>回調將Button2 * N
幫助修復:
單擊Button1 ñ = > callback Button2 * 1
謝謝!
幫助環回調的jQueryjQuery的幫助環回調的jQuery
誤差環路按鈕2
步驟1:單擊Button =>回調將Button2
步驟2:點擊將Button2 =>回調Button2 +回調Button2
第3步:單擊Button3 =>回調Button2 +回調Button2 +回調Button2
.....
步驟N:點擊按鈕* ň * =>回調將Button2 * N
幫助修復:
單擊Button1 ñ = > callback Button2 * 1
謝謝!
您正在事件中綁定事件。如果你仔細想想,如果你這樣做,你所描述的是不可避免的...每次點擊按鈕一個綁定另一個點擊事件到按鈕2等等......
我重構了你的代碼以實現如果你需要的話,你需要足夠的靈活性來擴展。
$(function() {
var body = $('body'),
button2 = body.find('#b2');
var events = {
b1 : function(event) {
// Unbind this click event to avoid event stacking
body.off('click', '#b1', events.b1);
// Fade in the second button and bind its event
button2.fadeIn('fast', function() {
body.on('click', '#b2', events.b2);
});
},
b2 : function(event) {
// Unbind button2 event whilst managing its click logic
alert('Button 2 clicked');
body.off('click', '#b2', events.b2);
// Hide button 2 and rebind the event to button 1
button2.fadeOut('fast', function() {
body.on('click', '#b1', events.b1);
);
}
};
// Bind the click event to button1
body.on('click', '#b1', events.b1);
});
我很抱歉,但我不知道你在說什麼。 –
錯誤:單擊雙擊Button1 => Button2調用兩次 錯誤:反覆點擊button1 => Button2調用連續 – tronghiep92
更改JS bin鏈接,這將不再執行您在評論中描述的內容。 –
'爲(VAR I = 0'這是什麼?也描述了與句子你的問題可能有助於我們理解這個問題 –