簡體   English   中英

您可以從冒泡到正文的元素中刪除由$ .on()添加的事件偵聽器嗎?

[英]Can you remove an event listener added by $.on() from an element bubbling up to the body?

給定類似這樣的$('body').on('click', 'a', someReference); 有什么方法可以使用$.off()刪除特定<a>此偵聽器?

...可以使用$.off()刪除特定<a>此偵聽器嗎?

不會。僅因為沒有任何<a>附加處理程序。 您正在使用事件委托 該處理程序附加到<body>並且僅在它源自<a>

但是您可以將事件處理程序綁定到特定a ,以停止事件傳播:

$(specific_a).on('click', false);

 $('body').on('click', 'a', function(){ console.log($(this).text()); }); $('a').eq(1).on('click', false); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <a href="#">normal</a> <a href="#">stopped</a> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM