国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

jQuery綁定事件的覆蓋

CodeSheep / 453人閱讀

摘要:中,事件的綁定是疊加式,而不是很多人想象的覆蓋式。而很多時(shí)候,我們希望執(zhí)行某函數(shù)做出某些判斷之后,為元素重新綁定事件,而不是同時(shí)保留多個(gè)事件監(jiān)聽。

ECMAscript中,事件的綁定是疊加式,而不是很多人想象的覆蓋式。如:

$("button").click(function(){
    alert("first");
});
$("button").click(function(){
    alert("second");
});

點(diǎn)擊button之后,會(huì)先彈出first彈出框,再彈出second彈出框(而不是只彈出second彈出框)。

而很多時(shí)候,我們希望執(zhí)行某函數(shù)、做出某些判斷之后,為元素重新綁定事件,而不是同時(shí)保留多個(gè)事件監(jiān)聽。(比如:輸入密碼之前,點(diǎn)擊“登錄”提示“輸入密碼”,密碼驗(yàn)證成功后點(diǎn)擊“登錄”提示“登錄成功”)

下面介紹兩種方法可以實(shí)現(xiàn)綁定事件覆蓋效果:
(我要來秀我的成語水平了,前方高能,非戰(zhàn)斗人員迅速撤離)

1.起死回生法
$("button").die().live("click",function(){
//新的綁定事件
});

先使用die()方法移除所有通過live()方法向元素添加的事件處理程序,再通過live()方法綁定新的事件。
這種方法有個(gè)前提,那就是被覆蓋的方法也必須是通過live()方法綁定的,否則die()方法“殺不死”它們,會(huì)完全沒有效果。

2.欲擒故縱法
$("button").unbind("click").click(function(){
//新的綁定事件
});

和第一種方法類似,先使用unbind()方法移除所有元素的事件處理程序,再綁定新的事件(后面可以改成bind()方法進(jìn)行綁定)。
這種方法也有個(gè)前提,那就是被覆蓋的方法如果是通過live()方法綁定的,會(huì)沒有效果。

相信一定有多事的小伙伴要問了,到底什么時(shí)候用bind()方法或者live()方法?兩者的區(qū)別是什么?
然而我要下班了,這個(gè)問題有點(diǎn)復(fù)雜,我會(huì)留到下一篇文章和大家一起探索。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/85876.html

相關(guān)文章

  • jQuery源碼解析之你并不真事件委托及target和currenttarget區(qū)別

    摘要:源碼源碼行被點(diǎn)擊了點(diǎn)擊了,即委托的事件被點(diǎn)擊了優(yōu)先添加委托,再添加其他即委托在上的事件數(shù)量在下標(biāo)為的位置插入委托事件解析可以看到,是優(yōu)先添加委托事件,再添加自身事件,觸發(fā)事件的時(shí)候也是按這個(gè)順序。 showImg(https://segmentfault.com/img/remote/1460000019419722); 前言:請(qǐng)先回顧下我之前寫的一篇文章:JavaScript之事件委...

    khs1994 評(píng)論0 收藏0
  • 【JavaScript系列】動(dòng)態(tài)綁定事件方法:(1)jqueryon方法;(2)html元素綁定

    摘要:提示如需移除事件處理程序,請(qǐng)使用方法。說明和綁定的點(diǎn)擊事件被的事件覆蓋。分析不同的綁定方式執(zhí)行順序?qū)傩栽厥录录T亟壎ㄊ录h除按鈕。屬性綁定事件動(dòng)態(tài)綁定事件方法的方法的屬性綁定。 一、動(dòng)態(tài)監(jiān)聽加載對(duì)象 當(dāng)使用js或jQuery動(dòng)態(tài)創(chuàng)建元素(例如append,appendChildren),再用on(事件, function(){...})或addEventListener監(jiān)聽事件...

    young.li 評(píng)論0 收藏0
  • [譯] addEventListener 與 onclick,孰優(yōu)孰劣?

    摘要:上面的例子應(yīng)用了匿名函數(shù)這個(gè)特性,還可以使用構(gòu)造函數(shù)或者閉包來添加事件監(jiān)聽器另一個(gè)重要特性,則是上面這段代碼中最后一行的最后一個(gè)參數(shù),用來控制監(jiān)聽器對(duì)于冒泡事件的響應(yīng)。在這里你不能使用閉包或者匿名函數(shù),并且控制域也是有限的。 原文出處:addEventListener vs onclick 之所以會(huì)想到這個(gè)話題,是因?yàn)樵诨仡欁约褐皩懙臑?button 動(dòng)態(tài)綁定事件的函數(shù)時(shí),腦海里忽...

    wums 評(píng)論0 收藏0
  • JavaScript 瀏覽器事件解析

    摘要:原文瀏覽器事件之間的關(guān)系程序采用了異步事件驅(qū)動(dòng)編程模型,維基百科對(duì)它的解釋是事件驅(qū)動(dòng)程序設(shè)計(jì)英語是一種電腦程序設(shè)計(jì)模型。 原文:https://keelii.github.io/2016/09/29/javascript-browser-event/ JavaScript、瀏覽器、事件之間的關(guān)系 JavaScript 程序采用了異步事件驅(qū)動(dòng)編程(Event-driven program...

    spacewander 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<