阻止冒泡的兼容性写法

IE9以下报错:对象不支持“stopPropagation”属性或方法

if (event.stopPropagation) {
  // 针对 Mozilla 和 Opera
  event.stopPropagation();
}
else if (window.event) {
  // 针对 IE
  window.event.cancelBubble = true;
}

  

时间: 2024-09-28 17:13:41

阻止冒泡的兼容性写法的相关文章

jQuery中的事件处理:return false、阻止默认行为、阻止冒泡以及兼容性问题

转自:http://wyqbailey.diandian.com/post/2012-07-12/40030551971 return false 在jQuery中,我们常用return false来阻止浏览器的默认行为,那”return false“到底做了什么? 当你每次调用”return false“的时候,它实际上做了3件事情: event.preventDefault(); event.stopPropagation(); 停止回调函数执行并立即返回. 对,你没看错,return fa

常用原生JS方法总结(兼容性写法)

①添加事件方法 1 2 3 4 5 6 7 8 9 addHandler:function(element,type,handler){     if(element.addEventListener){//检测是否为DOM2级方法         element.addEventListener(type, handler, false);     }else if (element.attachEvent){//检测是否为IE级方法         element.attachEvent("

js添加事件、移除事件、阻止冒泡、阻止浏览器默认行为等写法(兼容IE/FF/CHROME)

网上有关这方面的代码比较多而乱,这里整理一下并加以改进. 添加事件 var addEvent = function( obj, type, fn ) { if (obj.addEventListener) obj.addEventListener( type, fn, false ); else if (obj.attachEvent) { obj["e"+type+fn] = fn; obj.attachEvent( "on"+type, function() {

js 阻止冒泡 兼容性方法

function customstopPropagation(e){ var ev = e || window.event; if (ev.stopPropagation) { ev.stopPropagation(); $(document).on("click",".add",function(e){ //阻止冒泡 customstopPropagation(e); }) } else if (window.event) {//IE window.event.c

Event对象跨浏览器兼容性写法

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" con

阻止默认行为 阻止冒泡

什么是默认行为? var a = document.getElementById('a'); a.addEventListener('click',function(e){ e.preventDefault(); },false); 兼容性问题: function preventDefault(event){ var event = $$.getEvent(event); if(event.preventDefault){ event.preventDefault(); }else{ event

javascript 的事件--阻止冒泡

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>测试</title></head><body>    <input type="button" id="btn1" value="点击">    <

阻止冒泡和阻止默认事件——cancelBubble和stopPropagation

http://stackoverflow.com/questions/7596364/whats-the-difference-between-cancelbubble-and-stoppropagation 结论: cancelBubble是IE8及以下的浏览器阻止冒泡的一个布尔值类型的属性(非方法), stopPropagation()是其他标准浏览器和IE9及以上版本IE浏览器的阻止冒泡的一个方法 cancelBubble非标准,逐渐会被淘汰,所以提倡使用stopPropagation()

点击tr实现选择checkbox功能,点击checkobx的时候阻止冒泡事件, jquery给checkbox添加checked属性或去掉checked属性不能使checkobx改变状态

给tr添加点击事件,使用find方法查找tr下的所有层级的元素,children只查找下一层级的元素,所以使用find.find的返回值为jquery对象,在这个项目中不知道为什么使用jquery给checkbox添加checked属性或去掉checked属性不能使checkobx改变状态,所以我就把jquery对象转换为DOM对象,怎么转呢?jquery对象[0]或者get(0)就转换成DOM对象,然后直接.checked返回true或false就可以判断checkbox是否选中了.然后判断状