JavaScript中綁定事件的順序是什么

今天就跟大家聊聊有關JavaScript中綁定事件的順序是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

成都創(chuàng)新互聯(lián)公司成立于2013年,我們提供高端重慶網(wǎng)站建設公司、成都網(wǎng)站制作公司、網(wǎng)站設計、網(wǎng)站定制、網(wǎng)絡營銷推廣成都小程序開發(fā)、微信公眾號開發(fā)、網(wǎng)站推廣服務,提供專業(yè)營銷思路、內(nèi)容策劃、視覺設計、程序開發(fā)來完成項目落地,為搬家公司企業(yè)提供源源不斷的流量和訂單咨詢。

<!Doctype html>
<html>
<head>
 <meta charset="utf-8">
 <title></title>
 <style type="text/css">
 *{margin:0;padding: 0;}
 </style>
</head>
<body>
<div id="id1" >
 <div id="id2" >
 <div id="id3" ></div>
 </div>
</div>
</body>
<script type="text/javascript">
 var obj1=document.getElementById('id1'); 
 obj1.addEventListener('click',function(){
 alert('id1');
 },false);
 var obj2=document.getElementById('id2');
 obj2.addEventListener('click',function(){
 alert('id2');
 },true);
 var obj3=document.getElementById('id3');
 obj3.addEventListener('click',function(){
 alert('id3');
 },true);
 /*如果第三個參數(shù)為true,則事件在捕獲階段執(zhí)行,如果第三個參數(shù)為false,則事件在冒泡階段執(zhí)行*/
</script>
</html>

當點擊id3元素時候,執(zhí)行結果是:id2,id3,id1

解析:因為obj2與obj3綁定的方法在捕獲階段執(zhí)行,obj1的事件在冒泡階段執(zhí)行。

總結

在JS中,綁定的事件默認的執(zhí)行時間是在冒泡階段執(zhí)行,而非在捕獲階段,必須要理解

不過我們可以通過綁定事件時,指定事件執(zhí)行時間是在冒泡階段還是捕獲階段。

obj.addEventListener(event,function(){},bool)

bool:false,代表冒泡階段執(zhí)行

bool:true,代表捕獲階段執(zhí)行

JS在默認情況下獲取事件后,就開始從根元素開始捕獲所有該事件的監(jiān)聽對象,然后在冒泡階段逐一執(zhí)行。捕獲階段是在冒泡階段前面

阻止冒泡

w3c的方法是e.stopPropagation(),IE則是使用e.cancelBubble = true;

阻止默認行為

w3c的方法是e.preventDefault(),IE則是使用e.returnValue = false;

關于JS 事件冒泡和onclick,click,on()事件觸發(fā)順序

onclick,click,on()的優(yōu)先關系:onclick>click>on();

onclick和click綁定的事件,彼此之間遵守事件冒泡規(guī)則,從內(nèi)到外觸發(fā);

on()綁定的事件,總是晚于onclick和click綁定的事件觸發(fā);

看完上述內(nèi)容,你們對JavaScript中綁定事件的順序是什么有進一步的了解嗎?如果還想了解更多知識或者相關內(nèi)容,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

分享名稱:JavaScript中綁定事件的順序是什么
URL標題:http://muchs.cn/article20/jpgcjo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、虛擬主機、網(wǎng)站排名、云服務器、網(wǎng)站建設、網(wǎng)站策劃

廣告

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

成都seo排名網(wǎng)站優(yōu)化