本文摘自PHP中文网,作者逆旅行人,侵删。
在Javascript
中事件冒泡是由节点产生,然后会影响到父节点,逐级上升,最后慢慢影响到整个页面,但是有时我们想要阻止事件冒泡的发生甚至事件本身的发生呢?本文就带大家一起来了解一下。1.阻止事件冒泡发生
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | <!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "UTF-8" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
< title >Document</ title >
< style >
.boxA {
overflow: hidden;
width: 300px;
height: 300px;
margin: 100px auto;
background-color: blue;
text-align: center;
}
.boxB {
width: 200px;
height: 200px;
margin: 50px;
background-color: green;
line-height: 200px;
color: #fff;
}
</ style >
</ head >
< body >
< div class = "boxA" >
< div class = "boxB" >boxB</ div >
</ div >
< script >
var boxA = document.querySelector('.boxA');
var boxB = document.querySelector('.boxB');
boxA.onclick = function (e) {
console.log('我被点击了boxA');
};
boxB.onclick = function (e) {
e.cancelBubble=true; //不冒泡
console.log('我被点击了boxB');
};
</ script >
</ body >
</ html >
|
2.阻止事件本身发生
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "UTF-8" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
< title >Document</ title >
</ head >
< form action = "http://www.php.cn" method = "POST" >
< button type = "submit" >按钮1</ button >
</ form >
< body >
< script >
const btn=document.querySelector("button");
console.log(btn);
btn.addEventListener("click",function(e){
e.preventDefault();
});
</ script >
</ body >
</ html >
|
推荐:《2021年js面试题及答案(大汇总)》
以上就是Javascript如何阻止事件冒泡和事件本身发生的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
jquery.cookie.js插件实现换肤功能
css实现基于用户滚动应用(代码)
在javascript的不同函数中可以使用相同的变量名吗?
javascript中localstorage的用法注意点介绍
javascript语言的组成有哪些
javascript中宿主对象和原生对象的区别是什么
javascript如何改变控件的显示位置
javascript search()方法怎么用
javascript的常用事件有哪些
vue混入的相关操作介绍(附示例)
更多相关阅读请进入《事件冒泡》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » Javascript如何阻止事件冒泡和事件本身发生