http://codepen.io/oliecs/pen/womLPJ綁定初始點擊事件(A)後點擊事件(B)導致事件B火災立即
var nav = {
init: function() {
console.log('nav init');
$nav = $('nav');
$navIcon = $('.nav-icon');
$navIcon.on('click',function(){
nav.show();
})
},
show: function() {
console.log('nav show');
$nav.addClass('active');
$_DOCUMENT.on('click.navisopen',function(){ //document is a global variable
nav.close();
})
},
close: function() {
console.log('nav close');
$nav.removeClass('active');
$_DOCUMENT.off('.navisopen');
}
};
我覺得筆比我描述這更好。我想單擊導航圖標打開導航,然後在此之後的任何點擊都會關閉導航。但是,在第一次點擊後立即觸發關閉事件,導致導航功能即時打開和關閉。我不知道如何做到這一點。
更新JS是最初的單擊事件仍在處理中,當您添加另一個事件處理它,然後第一個事件處理程序完成後得到執行? –