码迷,mamicode.com
首页 > 其他好文 > 详细

阻止事件冒泡和阻止浏览器默认行为

时间:2021-03-30 12:44:55      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:bubble   链接   取消   fun   ret   return   必须   一个   val   

1. 阻止事件冒泡 兼容w3c浏览器

function cBubble(e){
    if(e.stopPropagation){
        e.stopPropagation();//ie9+
    }else{//ie678
        e.cancelBubble = true;
    }
}

2.阻止浏览器默认行为

function cDefault(e){
   if(e.preventDefault){//ie9+
	e.preventDefault();
   }else{//ie 678
	e.returnValue = false;
    }
};

3.阻止默认详细说明

w3c 的方法是 e.preventDefault(),
IE 则是使用 e.returnValue = false;

preventDefault它是事件对象(Event)的一个方法,
作用是取消 一个目标元素的默认行为.

既然是说默认行为,当然是元素必须有默认行为才能被取消.
如果元素本身就没有默认行为,调用当然就无效 了.
什么元素有默认行为呢?
如链接<a>,
提交按钮<input type=” submit”>等.
当Event对象的cancelable为false时,表示没有默认行为,
这时即使有默认行为,调用 preventDefault 也是不会起作用的。

阻止事件冒泡和阻止浏览器默认行为

标签:bubble   链接   取消   fun   ret   return   必须   一个   val   

原文地址:https://www.cnblogs.com/IwishIcould/p/14587976.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!