js中的兼容

匿名 (未验证) 提交于 2019-12-03 00:06:01

1、事件对象的兼容解决:

var e = eve || window.event;

 

2、键盘事件的兼容解决:

var code = e.keyCode || e.which;

 

3、事件源的兼容解决:

var t = e.target || e.srcElement;

 

4、阻止默认事件的兼容解决:

1 function stopDefault(eve) { 2     if(eve.preventDefault) { 3           eve.preventDefault(); 4     }else { 5           eve.returnValue = false; 6     } 7 } 8 //解释:eve,事件对象

 

5、监听式绑定事件的兼容解决:

1 function addEvent(ele,type,fn) { 2    if(ele.addEventListener){ 3        ele.addEventListener(type,fn); 4     }else if(eve.attachEvent){ 5        ele.attachEvent("on"+type,fn); 6     } else { 7         ele["on"+type] = fn; 8     } 9 }

 

6、监听式删除事件的兼容解决:

1 function removeEvent(ele, type, fn) { 2     if (ele.removeEventListener) { 3         ele.removeEventListener(type, fn); 4     } else if (eve.detachEvent) { 5         ele.detachEvent("on" + type, fn); 6     } else { 7         ele["on" + type] = fn; 8     } 9 }

 

7、事件冒泡的兼容解决:

1 function stopBubble(e) { 2     if (e.stopPropagation) { 3         e.stopPropagation(); 4     } else { 5         e.cancelBubble = true; 6     } 7 }

 

8、获取非行内样式的兼容解决:

1 function getStyle(obj, attr) { 2     if (obj.currentStyle) { 3         return obj.currentStyle[attr]; 4     } else { 5         return getComputedStyle(obj, false)[attr]; 6     } 7 }
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!