成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

在jQuery中的自定義事件的冒泡

2024-03-22    分類: 網(wǎng)站建設

昨天的文章牽涉到了jQuery的自定義事件冒泡問題,但只是提到?jīng)]有詳細的說明。在jQuery中,自定義事件是會冒泡的,而且不僅是對普通的DOM元素冒泡,甚至還會擴散到window(defaultView)上。這些機制是jQuery內(nèi)部實現(xiàn)的,和DOM的事件機制沒啥關(guān)系。 現(xiàn)在來做這么一個測試<div?class="d1"> <div?class="d2"> <div?class="d3"> div </div> </div> </div> <script?src="jquery.js"></script> <script> $(function(){ //選擇所有標簽外加document和window來綁定上test事件 $("*").add(document).add(window).on("test",function(){ //輸出對象的構(gòu)造器名稱和className console.log(this.constructor.name,this.className||""); }); //對最內(nèi)層的div觸發(fā)test $(".d3").trigger("test"); }); </script>

這家伙厲害吧,我只對最內(nèi)層的DIV執(zhí)行了trigger就觸發(fā)了這么多個事件,這就是自定義事件冒泡。jQuery默認對事件冒泡,只有特殊指定不冒泡時候才不會冒泡。關(guān)于這個機制的實現(xiàn)可以看jQuery的代碼(jquery-1.9.1.js 2956行到2973行)。 如果不需要冒泡怎么辦呢?在jQuery的內(nèi)部有這么一個判斷if?(?!onlyHandlers?&&?!special.noBubble?&&?!jQuery.isWindow(?elem?)?)  只有通過這個判斷時才會冒泡,最簡單的方法就是讓onlyHandlers為true。這個操作jQuery有提供方法,所以只要在觸發(fā)事件時使用triggerHandler即可??$(".d3").triggerHandler("test");

本文標題:在jQuery中的自定義事件的冒泡
URL標題:http://jinyejixie.com/news11/321211.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供Google、全網(wǎng)營銷推廣、網(wǎng)站排名、微信小程序、網(wǎng)站制作、服務器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設公司
海兴县| 双桥区| 揭阳市| 武清区| 香河县| 宜兰县| 宜城市| 武乡县| 安徽省| 古丈县| 鄯善县| 清流县| 阿合奇县| 苏州市| 镇远县| 桃园市| 阿勒泰市| 柏乡县| 贵南县| 乐亭县| 四子王旗| 双城市| 河东区| 桃园市| 永仁县| 四会市| 漳州市| 中西区| 眉山市| 北票市| 中山市| 牡丹江市| 策勒县| 华安县| 昭通市| 乌兰浩特市| 涡阳县| 武穴市| 中卫市| 灵武市| 天镇县|