首页 > 代码库 > 事件冒泡和事件默认行为
事件冒泡和事件默认行为
1.原生态事件
取得原生态的事件对象:
<button onclick="get(event)" type="button">tijiao</button>
阻止事件冒泡:
1 //如果提供了事件对象,则这是一个非IE浏览器 2 if ( e && e.stopPropagation )3 //因此它支持W3C的stopPropagation()方法4 e.stopPropagation();5 else6 //否则,我们需要使用IE的方式来取消事件冒泡 7 e.cancelBubble = true;
阻止默认行为:
1 //如果提供了事件对象,则这是一个非IE浏览器 2 if ( e && e.preventDefault ){3 //阻止默认浏览器动作(W3C) 4 e.preventDefault();5 6 } else {7 //IE中阻止函数器默认动作的方式 8 e.returnValue = http://www.mamicode.com/false;9 }
事件目标对象:
1 var target = null;2 if(e && e.srcElement) {3 //ie支持,ie10也包含属性target了。4 target = e.srcElement;5 } else {6 target = e.target;7 }
2.Jquery事件
jquery对事件进行了封装,需要区分原生态event事件和jquery事件。jquery事件可以直接调用jquery api方法。
阻止默认行为:
$("a").click(function(event) { event.preventDefault(); $(‘<div/>‘).append(‘default ‘ + event.type + ‘ prevented‘).appendTo(‘#log‘); });
阻止事件冒泡:
1 $("p").click(function(event){2 event.stopPropagation(); // do something3 });
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。