JS兼容问题的函数封装文档

来源:互联网 发布:python 热力地图 编辑:程序博客网 时间:2024/05/22 04:48

阻止事件冒泡的函数

function stopMP(who){    if(ev.cancelBubble){        ev.cancelBubble = true;    }else{        ev.stopPropagation( );    }}调用:stopMP(ev);

事件绑定/监听和事件解除的函数

绑定:    function bind(target,type.func){        if(target.addEventListener){            target.addEventListener(type,func,false);        }else{            target.attachEvent("on"+type,func);        }    }解绑:    function unbind(target, type, func) {        if (target.removeEventListener) {            target.removeEventListener(type, func, false);        } else {            target.detachEvent("on" + type, func);        }    }

获取计算后样式/CSS样式的函数

function getCSS(obj,name){    if(obj.currentStyle){        // IE        return obj.currentStyle[name];//这里的name从一个属性转化成了一个变量,传进来的就是上面引用函数的backgroundColor    }else{        // 非IE        return getComputedStyle(obj,"")[name];    }}

滚轮事件的兼容函数

function addGL(target,fn){    if(navigation.userAgent.search("FireFox") != -1){        //火狐        target.addEventListener("DOMMouseScroll",fn,false);    }else{        //非火狐        if(target.addEventLisetner){            target.addEventListener("mouseWheel",fn,false);        }else{            target.attachEvent("mouseWheel",fn);        }    }}

阻止默认事件—右键/表单提交

阻止右键:    第一种:        return false;不常用    第二种:        ev.returnValue=false;    第三种:        ev.preventDefault( );不兼容IE6-7-8    函数:        function stopwho){            if(ev.returnValue){                ev.returnValue = false;            }else{                ev.preventDefalut( );            }        }阻止表单提交:    return false
原创粉丝点击