IE的事件傳遞-event.cancelBubble示例介紹
更新時間:2014年01月12日 16:49:16 作者:
關于event.cancelBubble,Bubble就是一個事件可以從子節(jié)點向父節(jié)點傳遞,下面有個不錯的示例,大家可以感受下
關于event.cancelBubble,由于HTML中的對象都是層次結構,比如一個Table包含了多個TR,一個TR包含了多個TD
Bubble就是一個事件可以從子節(jié)點向父節(jié)點傳遞,比如鼠標點擊了一個TD,當前的event.srcElement就是這個TD,但是這種冒泡機制使你可以從TR或者Table處截獲這個點擊事件,但是如果你event.cancelBubble,則就不能上傳事件。
例子:
<html>
<body>
<table border="1" width="26%" id="tableA" onclick="alert('tableA')">
<tr onclick="tableA_rowA_click()">
<td width="106">一般</td>
</tr>
<tr onclick="tableA_rowB_click()">
<td width="106">阻止消息上傳</td>
</tr>
</table>
<p> </p>
</body>
</html>
<!-- -->
<script language="javascript">
<!--
function tableA_rowA_click(){
alert('tableA_rowA');
}
function tableA_rowB_click(){
alert('tableA_rowB');
event.cancelBubble=true;
}
//-->
</script>
event.cancelBubble阻止事件冒泡,event.cancelBubble=true;
取消事件冒泡,在 IE 的事件機制中,觸發(fā)事件會從子元素向父元素逐級上傳,就是說,如果子元素觸發(fā)了單擊事件,那么也會觸發(fā)父元素的單擊事件;event.cancelBubble=true;可以停止事件繼續(xù)上傳補充一點,Ie的事件傳遞是從下到上的:
Bubble就是一個事件可以從子節(jié)點向父節(jié)點傳遞,比如鼠標點擊了一個TD,當前的event.srcElement就是這個TD,但是這種冒泡機制使你可以從TR或者Table處截獲這個點擊事件,但是如果你event.cancelBubble,則就不能上傳事件。
例子:
復制代碼 代碼如下:
<html>
<body>
<table border="1" width="26%" id="tableA" onclick="alert('tableA')">
<tr onclick="tableA_rowA_click()">
<td width="106">一般</td>
</tr>
<tr onclick="tableA_rowB_click()">
<td width="106">阻止消息上傳</td>
</tr>
</table>
<p> </p>
</body>
</html>
<!-- -->
<script language="javascript">
<!--
function tableA_rowA_click(){
alert('tableA_rowA');
}
function tableA_rowB_click(){
alert('tableA_rowB');
event.cancelBubble=true;
}
//-->
</script>
event.cancelBubble阻止事件冒泡,event.cancelBubble=true;
取消事件冒泡,在 IE 的事件機制中,觸發(fā)事件會從子元素向父元素逐級上傳,就是說,如果子元素觸發(fā)了單擊事件,那么也會觸發(fā)父元素的單擊事件;event.cancelBubble=true;可以停止事件繼續(xù)上傳補充一點,Ie的事件傳遞是從下到上的:
相關文章
使用bat打開多個cmd窗口執(zhí)行gulp、node
本文主要介紹了使用bat打開多個cmd窗口執(zhí)行gulp、node的方法。具有很好的參考價值,下面跟著小編一起來看下吧2017-02-02Bootstrap實現(xiàn)省市區(qū)三級聯(lián)動(親測可用)
這篇文章主要為大家詳細介紹了Bootstrap實現(xiàn)省市區(qū)三級聯(lián)動,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-07-07