国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS冒泡事件的快速解決方法

2019-11-20 21:27:39
字體:
來源:轉載
供稿:網友

何為冒泡事件
就是當設定了多個div的嵌套時;即建立了父子關系,當父div與子div共同加入了onclick事件時,當觸發了子div的onclick事件后,子div進行相應的js操作。但是父div的onclick事件同樣會被觸發。這就造成了事件的多層并發,導致了頁面混亂。這就是冒泡事件。

消除冒泡事件的方法
阻止JavaScript事件冒泡傳遞(cancelBubble 、stopPropagation)

下面的一段代碼即可以很好的解釋是么是冒泡效果,什么叫消除冒泡效果

復制代碼 代碼如下:

<html>
<head>
<title> 阻止JavaScript事件冒泡傳遞(cancelBubble 、stopPropagation)</title>
<meta name="keywords" content="JavaScript,事件冒泡,cancelBubble,stopPropagation" />
<script type="text/javascript">
function doSomething (obj,evt) {
alert(obj.id);
var e=(evt)?evt:window.event; //判斷瀏覽器的類型,在基于ie內核的瀏覽器中的使用cancelBubble
if (window.event) {
e.cancelBubble=true;
} else {
//e.preventDefault(); //在基于firefox內核的瀏覽器中支持做法stopPropagation
e.stopPropagation();
}
}
</script>
</head>
<body>
<div id="parent1" onclick="alert(this.id)" style="width:250px;background-color:yellow">
<p>This is parent1 div.</p>
<div id="child1" onclick="alert(this.id)" style="width:200px;background-color:orange">
<p>This is child1.</p>
</div>
<p>This is parent1 div.</p>
</div>
<br />
<div id="parent2" onclick="alert(this.id)" style="width:250px;background-color:cyan;">
<p>This is parent2 div.</p>
<div id="child2" onclick="doSomething(this,event);" style="width:200px;background-color:lightblue;">
<p>This is child2. Will bubble.</p>
</div>
<p>This is parent2 div.</p>
</div>
</body>
</html>

把代碼直接復制后,打開當點擊child1時不僅會彈出 child1 對話框還會彈出 parent1

這就是冒泡事件

但是單擊chile2只會彈出child2卻不會彈出 parent2,這便是應用了阻止冒泡事件的特效的效果.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 榆林市| 吴忠市| 阳原县| 阿瓦提县| 榆社县| 香港 | 卓资县| 台江县| 西盟| 泰宁县| 乌兰县| 黄浦区| 福州市| 德阳市| 福海县| 屯门区| 翁源县| 新乡县| 怀集县| 怀远县| 赤峰市| 白城市| 马公市| 溧水县| 定结县| 巨鹿县| 遂溪县| 大足县| 沈丘县| 松桃| 盘山县| 舒城县| 永安市| 新沂市| 宝坻区| 正定县| 安庆市| 崇阳县| 满洲里市| 琼结县| 博客|