真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

jQuery事件的命名空間

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

創(chuàng)新互聯(lián)公司是創(chuàng)新、創(chuàng)意、研發(fā)型一體的綜合型網站建設公司,自成立以來公司不斷探索創(chuàng)新,始終堅持為客戶提供滿意周到的服務,在本地打下了良好的口碑,在過去的十載時間我們累計服務了上千家以及全國政企客戶,如圍欄護欄等企業(yè)單位,完善的項目管理流程,嚴格把控項目進度與質量監(jiān)控加上過硬的技術實力獲得客戶的一致贊美。

看下面這段代碼:

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

像上面這樣綁定事件監(jiān)聽器,當元素被點擊時,doSomething 和 doSomethingElse 這兩個監(jiān)聽器都會被觸發(fā)。這是使用 jQuery 的一個便利之處,可以隨時給元素的同一個事件添加不同的監(jiān)聽器。不像用 onclick 那樣,新的監(jiān)聽器會覆蓋舊的。

如果你想解綁其中一個監(jiān)聽器,比如 doSomething,怎么做呢?

是這樣嗎?

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

注意!上面這行代碼會把元素的 click 事件的所有監(jiān)聽器全部解綁,而這并不是我們要的結果。

幸運的是 jQuery 的 .off() 方法可以接受第二個參數(shù),就像 .on() 一樣。只要把監(jiān)聽器函數(shù)的名字作為第二個參數(shù)傳入 .off() 方法,就能夠解綁指定的監(jiān)聽器。

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

但是如果你不知道這個函數(shù)的名字,或者你用的是匿名函數(shù):

$('#element').on('click', function() {
    console.log('doSomething');
});

怎樣才能精確地解綁某一個 click 事件監(jiān)聽器呢?該了解一下 jQuery 的事件命名空間了(jQuery namespaced events)!

先上代碼:

$('#element').on('click.myNamespace', function() {
    console.log('doSomething');
});

這里不只是把 click 事件作為參數(shù)傳入 .on() 方法,而是給 click 事件指定了一個命名空間,然后監(jiān)聽了這個命名空間里的 click 事件。此時,即使監(jiān)聽器是匿名函數(shù),實際上它也是 “ 有名 ” 的了?,F(xiàn)在你可以像下面這樣解綁某一個具體的命名空間里的事件監(jiān)聽器了。

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

這是 jQuery 為我們提供的又一個方便而強大的功能,它的內部實現(xiàn)肯定很有意思!

編譯自:CSS-Tricks

更多WEB技術,歡迎訪問:胡作菲為


分享題目:jQuery事件的命名空間
網址分享:http://weahome.cn/article/gghddg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部