阻止事件冒泡

 

图中,3为子元素,2为元素3的父元素,1为2的父元素

事件冒泡:分别给图中,元素1,元素2,元素3,添加点击事件,分别弹出1,2,3。

我们想要的是点击1元素的时候弹出为1,点击2元素的时候弹出2,点击3元素的时候弹出3。但事与愿违我们点击1元素的时候弹出1,点击2元素的时候然弹出2,后弹出1,也就是事件从2元素冒泡到1元素,因此1元素的点击事件也会被触发,其实事件会一直冒泡到根元素,只是1的父元素没有添加点击事件看不出来事件已经冒泡到根元素,同理,点击3元素的时候会弹出,3,2,1。一句话,也就是事件会一直冒泡到根元素。


为了出现在我们想要的,点3元素出现3,点2元素出现2,点击1元素出现1。这就要用到阻止事件冒泡,

ie:evt.cancelBubble = true;

w3c:stopPropagation();

ie和标准浏览器用的方法不一样,为了兼容浏览器我们得自己封装一个函数

function stopPropagation(evt)
	{

		if(evt.stopPropagation)
		{
			evt.stopPropagation(); //W3C
		}
		else
		{
			evt.cancelBubble = true; //IE
		}
	}

以上为个人理解,做为个人学习笔记。如有表达不当还望指点,初学请谅解!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值