DOM的addEventListener方法第三个参数

DOM的事件有三个阶段

1.捕获 
2.处于目标 
3.冒泡

其中addEventListener监听事件的时候第三个参数默认为false

当第三个参数不设置或者设置为false时,事件在冒泡阶段触法(由内到外,先执行子事件,再执行父事件)
当设置为true时,事件在捕获阶段就触法(由外到内,先执行父事件)

<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>
	<div class="d1">
		<div class="d2">ooo</div>
	</div>	
	<div class="d3">
		<div class="d4">123</div>
	</div>	
	<script>
		let d1 = document.getElementsByClassName('d1')[0];
		let d2 = document.getElementsByClassName('d2')[0];
		d1.addEventListener('click',function(){console.log('d1,false')},false);
		d1.addEventListener('click',function(){console.log('d1,true')},true);
		d2.addEventListener('click',function(){console.log('d2,false')},false);
		d2.addEventListener('click',function(){console.log('d2,true')},true);

		let d3 = document.getElementsByClassName('d3')[0];
		let d4 = document.getElementsByClassName('d4')[0];
		d3.addEventListener('click',function(){console.log('d3,true')},true);
		d3.addEventListener('click',function(){console.log('d3,false')},false);
		d4.addEventListener('click',function(){console.log('d4,true')},true);
		d4.addEventListener('click',function(){console.log('d4,false')},false);
	</script>
</body>
</html>

点击时输出

 d1,true
 d2,false
 d2,true
 d1,false
 
 d3,true
 d4,true
 d4,false
 d3,false
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值