首頁 >web前端 >js教程 >jQuery 事件的命名空間簡單了解_jquery

jQuery 事件的命名空間簡單了解_jquery

WBOY
WBOY原創
2016-05-16 17:12:571096瀏覽

用 jQuery 綁定和解綁事件監聽器都是非常簡單的。但是當你為一個元素的一個事件綁定了多個監聽器時,怎麼精確地解綁其中一個監聽器?我們需要了解事件的命名空間。

看下面這段程式碼:

複製程式碼 程式碼如下:


程式碼如下:

$('#element')
.on('click', doSomething)
.on('click', doSomethingElse);


像上面這樣綁定事件監聽器,綁定事件監聽器,綁定事件監聽器,綁定事件監聽器,綁定事件監聽器,綁定事件監聽器當元素被點擊時,doSomething 和doSomethingElse 這兩個監聽器都會被觸發。這是使用 jQuery 的一個便利之處,可以隨時為元素的同一個事件添加不同的監聽器。不像用 onclick 那樣,新的監聽器會覆蓋舊的。
如果你想解綁其中一個監聽器,像是 doSomething,怎麼做呢? 是這樣嗎?
複製程式碼


程式碼如下:


$('#element').off('click ');

複製程式碼


程式碼如下:


$('#element').off('click ', doSomething); 複製程式碼


程式碼如下:

$('#element').on('click', function() {
console.log('doSomething');
});
怎麼能精確地解綁某一個click 事件監聽器呢? 先上程式碼:
複製程式碼


程式碼如下:

$('#element>$('#element ').on('click.myNamespace', function() {
console.log('doSomething');
}); 複製程式碼


程式碼如下:

$('#element').off('click .myNamespace'); 這是jQuery 為我們提供的另一個方便而強大的功能,它的內部實作肯定很有趣!
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn