多次注冊事件會導(dǎo)致一個(gè)事件被觸發(fā)多次的解決方法
更新時(shí)間:2013年08月12日 11:01:43 作者:
一個(gè)JavaScript邏輯,會自動(dòng)綁定函數(shù)到按鈕的click事件,但是這段代碼會反復(fù)注冊事件,具體的解決方法如下,感興趣的朋友可以參考下
一個(gè)JavaScript邏輯,會自動(dòng)綁定函數(shù)到按鈕的click事件,但是這段代碼會反復(fù)注冊事件。這樣依賴onNext函數(shù)會在點(diǎn)擊一次按鈕的時(shí)候多次觸發(fā)。
這是JQuery內(nèi)部沒有判斷是否綁定多次,懷疑其內(nèi)部用了數(shù)組保存事件函數(shù),而且沒有去重。
下面的代碼預(yù)防了這個(gè)問題。解決方案很簡單。
if (!this.hasPageBarEvents) {
$(".pNext").on("click", this, this.onNext);
this.hasPageBarEvents = true;
}
以后用到JQuery要小心這個(gè)特性。
這是JQuery內(nèi)部沒有判斷是否綁定多次,懷疑其內(nèi)部用了數(shù)組保存事件函數(shù),而且沒有去重。
下面的代碼預(yù)防了這個(gè)問題。解決方案很簡單。
復(fù)制代碼 代碼如下:
if (!this.hasPageBarEvents) {
$(".pNext").on("click", this, this.onNext);
this.hasPageBarEvents = true;
}
以后用到JQuery要小心這個(gè)特性。
相關(guān)文章
js通過keyCode值判斷單擊鍵盤上某個(gè)鍵,然后觸發(fā)指定的事件方法
下面小編就為大家?guī)硪黄猨s通過keyCode值判斷單擊鍵盤上某個(gè)鍵,然后觸發(fā)指定的事件方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02使用JavaScript進(jìn)行表單校驗(yàn)功能
最近在學(xué)習(xí)JavaScript,因此想到使用js實(shí)現(xiàn)表單校驗(yàn)。下面通過本文給大家分享使用javascript實(shí)現(xiàn)表單校驗(yàn)功能的步驟,需要的的朋友參考下吧2017-08-08PHP使用方法重載實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建屬性的get和set方法
這篇文章主要介紹了PHP使用方法重載實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建屬性的get和set方法,使用本文方法可以在一個(gè)類中不用在寫大量的set方法或get方法,需要的朋友可以參考下2014-11-11淺談javascript中的 “ && ” 和 “ || ”
本文主要介紹了Javascript中的 “ && ” 和 “ || ”的相關(guān)知識。具有很好的參考價(jià)值,下面跟著小編一起來看下吧2017-02-02JavaScript Window瀏覽器對象模型方法與屬性匯總
本文給大家匯總分享的是JavaScript Window瀏覽器對象模型方法與屬性,十分的細(xì)致全面,這里推薦給大家,有需要的小伙伴可以參考下。2015-04-04Typescript井字棋的項(xiàng)目實(shí)現(xiàn)
本文主要介紹了Typescript井字棋的項(xiàng)目實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08JSON.parse()和JSON.stringify()使用介紹
這篇文章主要介紹了JSON.parse()和JSON.stringify()使用,需要的朋友可以參考下2014-06-06