日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jQuery Event.stopPropagation() 函数详解

發布時間:2025/3/21 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jQuery Event.stopPropagation() 函数详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

stopPropagation()函數用于阻止當前事件在DOM樹上冒泡。

根據DOM事件流機制,在元素上觸發的大多數事件都會冒泡傳遞到該元素的所有祖輩元素上,如果這些祖輩元素上也綁定了相應的事件處理函數,就會觸發執行這些函數。

使用stopPropagation()函數可以阻止當前事件向祖輩元素的冒泡傳遞,也就是說該事件不會觸發執行當前元素的任何祖輩元素的任何事件處理函數。

該函數只阻止事件向祖輩元素的傳播,不會阻止該元素自身綁定的其他事件處理函數的函數。event.stopImmediatePropagation()不僅會阻止事件向祖輩元素的傳播,還會阻止該元素綁定的其他(尚未執行的)事件處理函數的執行。

此外,由于live()函數并不是將事件處理函數直接綁定到自己身上,而是"委托"綁定到祖輩元素上,由祖輩元素來觸發執行。live()函數會先一次性冒泡到文檔的頂部,然后為符合條件的元素觸發事件。因此,stopPropagation()函數無法阻止live事件的冒泡。

同樣地,delegate()函數也是"委托事件函數",只有事件冒泡傳遞到"受委托"的祖輩元素才會被觸發執行。因此,stopPropagation()函數無法阻止該元素到"受委托"的祖輩元素之間的事件冒泡。

該函數屬于jQuery的Event對象。

語法

eventObject.stopPropagation( )

返回值

stopPropagation()函數沒有返回值,也可以說返回值為undefined。

示例&說明

請參考下面這段HTML代碼:

<div>
? ? <p>段落文本內容
? ? ? ? <input type="button" value="點擊" />
? ? </p>
</div>

與event.stopPropagation()函數相關的jQuery示例代碼如下:

// 為所有div元素綁定click事件
$("div").click( function(event){
? ? alert("div-click");
} );

//為所有p元素綁定click事件
$("p").click( function(event){
? ? alert("p-click");
} );

//為所有button元素綁定click事件
$(":button").click( function(event){
? ? alert("button-click");
? ? // 阻止事件冒泡到DOM樹上
? ? event.stopPropagation(); // 只執行button的click,如果注釋掉該行,將執行button、p和div的click ?
} );

運行代碼

注意,live()函數無法阻止事件的冒泡傳遞,相應的jQuery示例代碼如下(仍參照上面的HTML代碼)。點擊按鈕,p-click、div-click、button-click都會執行:

// 為所有div元素的click事件綁定處理函數
$("div").click( function(event){
? ? alert("div-click");
} );

// 為所有p元素的click事件綁定處理函數
$("p").click( function(event){
? ? alert("p-click");
} );

// 為div元素內的所有button元素的click事件綁定處理函數
$("div").live("click", ":button", function(event){
? ? alert("button-click");
? ? event.stopPropagation();
} );


// 點擊按鈕,所有事件處理函數都會執行
// 因為live()函數先直接冒泡到document,然后再來觸發事件,因此它無法阻止事件冒泡(執行函數時都已經冒泡完畢,當然無法阻止)

運行代碼

delegate()函數無法阻止該元素和"受委托"元素之間的事件冒泡,相應的jQuery示例代碼如下(仍參照上面的HTML代碼)。點擊按鈕,會執行p-click、button-click:

// 為所有div元素的click事件綁定處理函數
$("div").click( function(event){
? ? alert("div-click");
} );

// 為所有p元素的click事件綁定處理函數
$("p").click( function(event){
? ? alert("p-click");
} );

// 為div元素內的所有button元素的click事件綁定處理函數
$("div").delegate(":button", "click", function(event){
? ? alert("button-click");
? ? event.stopPropagation();
} );

// 點擊按鈕,會執行p-click和button-click
// 因為delegate()函數會把button元素的點擊事件委托給div元素來觸發,所以事件必須冒泡到div元素才能觸發,它無法阻止button到div之間的事件冒泡,所以會執行p-click。

轉載于:https://www.cnblogs.com/soundcode/p/5377778.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的jQuery Event.stopPropagation() 函数详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 健身教练巨大粗爽gay视频 | 啪啪日韩 | 爱爱福利社 | 国产欧美一区二区三区精品酒店 | 2025韩国大尺度电影 | 91成人福利 | 精品视频在线看 | 欧美人妻一区二区 | 久久艹这里只有精品 | 一级欧美一级日韩 | 精品一性一色一乱农村 | 亚洲色图偷拍视频 | 精品一区在线播放 | 日本a在线播放 | 亚洲欧美日韩另类在线 | 视频在线观看一区二区三区 | 美女洗澡隐私免费网站 | 在线观看av资源 | 午夜av片 | 亚洲一区欧洲二区 | 日韩无马 | 久久无码人妻一区二区三区 | 污污网站在线播放 | 国产又粗又长 | 欧美激情视频网站 | 暴力调教一区二区三区 | 欧美日韩国产在线播放 | 亚洲av永久无码精品三区在线 | 日本色偷偷 | 欧美精品在欧美一区二区 | 超碰人人人人人人人 | 国产精品久久久影院 | 又粗又大又硬又长又爽 | 国产精品丝袜视频无码一区69 | 色噜噜狠狠一区二区三区 | 久久久国产精品黄毛片 | 美女诱惑一区 | 国产一级做a爱片久久毛片a | 天堂视频中文在线 | 福利一区福利二区 | 国产成人久久婷婷精品流白浆 | 亚洲一区二区三区人妻 | 青青操视频在线观看 | 91 色| 免费观看日本 | 91xxxxx| www.九色| 亚洲人久久 | 国产不卡视频在线播放 | 四虎5151久久欧美毛片 | 激情拍拍 | 91视频黄版 | av手机免费看 | 中国黄色网页 | www.日本在线视频 | 日屁网站 | 国产精品7777777 | 亚洲大片精品 | 国产成人免费看 | 欧美日韩视频一区二区 | 青青草视频免费 | 风间由美一区 | 免费又黄又爽又猛大片午夜 | 国产又大又黑又粗免费视频 | 国产女教师bbwbbwbbw | 成人黄色网址在线观看 | 成年人免费在线观看网站 | 极品少妇在线 | 99re这里 | 国产熟妇另类久久久久 | 嫩草影院在线观看视频 | 色大师在线观看 | 野花成人免费视频 | 不卡视频在线观看 | 久久影视一区 | sm调教羞耻姿势图片 | 久久国产精品一区 | 欧美亚洲天堂网 | 天天操人人 | 国产精品23p| 欧美在线性 | 欧美午夜小视频 | 国产精品一区二区无码免费看片 | 又欲又污又肉又黄短文 | 高贵麻麻被调教成玩物 | 在线观看成人网 | 午夜视频免费在线 | 国产精品白丝喷水在线观看 | 国产乱妇4p交换乱免费视频 | 成人精品视频99在线观看免费 | 香蕉视频ap| 欧美巨大乳 | 夜夜骚av一区二区三区 | 无码国精品一区二区免费蜜桃 | 亚洲jizzjizz | 91亚洲网 | 黄色三级生活片 | a级国产毛片 | 日韩美女视频在线观看 |