我有一個後退按鈕即表現爲點擊使用以下HTMLjQuery是添加類,然後單擊,但在同一時間
<div class="back-from-professors level-one">Back</div>
我用下面的jQuery的申請一回行動
jQuery('.research-box-container').on('click', '.back-from-professors.level-one', function() {
jQuery('.professor').removeClass('show');
jQuery('.professor-list').hide();
jQuery('.research-box-inner-sections-container').show();
jQuery('.capability-list').removeClass('temporary-hide');
});
然後我想申請以下時
jQuery('.professor-list').on('click','.professor.show', function() {
jQuery(this).parent().find('.back-from-professors').addClass('level-two');
jQuery(this).parent().find('.back-from-professors').removeClass('level-one');
jQuery(this).next().addClass('show');
jQuery(this).removeClass('show');
});
jQuery('.professor-list').on('click','.back-from-professors.level-two', function() {
jQuery(this).parent().find('.grey-list-item.professor').addClass('show');
jQuery(this).parent().find('.grey-list-professor-details').removeClass('show');
jQuery(this).removeClass('level-two');
alert('test');
jQuery(this).addClass('level-one');
});
然而,當我點擊.back-from-professors.level-two
它做如預期,然後提醒test
。然後,它會將類level-one
但隨後也執行從我的第一個jQuery代碼的動作上面,即它適用的jQuery('.research-box-container').on('click', '.back-from-professors.level-one', function() {});
行爲難道這與.on()
發生?
我能在這裏重現問題... http://jsfiddle.net/tb8uLpnL/4/(更新的jsfiddle)
是.back從 - professors.level兩內.back從 - professors.level 211?可能會傳播起來。請嘗試內部的stopProgation。從教授級回到二級。 – BenG
不,他們是相同的元素,所以我不明白爲什麼會發生。它的不尋常,因爲它完全按照預期完成,直到'alert('test')'後,然後,而不僅僅是簡單地添加類,它似乎在我的第一個jQuery功能中做了所有事情 – Adrian
我添加了'event。 stopPropagation();'在'jQuery(this).addClass('level-1')之後'''但是沒有運氣 – Adrian