为元素绑定/解绑事件的兼容代码

2019-06-07  本文已影响0人  小透明进击战
/**
 * 为元素绑定事件的兼容代码
 * @param element元素对象
 * @param type事件类型,字符串类型
 * @param func事件处理函数(可以是匿名也可以是命名函数)
 */
function addEventListener(element,type,func){
    //判断浏览器是否支持addEventListener方法,注意没有()。
    if(element.addEventListener){
        element.addEventListener(type,func,false);
       //判断浏览器是否支持attachListener方法
    }else if(element.attachEvent){
        element.attachEvent("on"+type,func);
    }else{
          //第三种常用的方式
        element["on"+type]=func;
    }
   
}

/**
 * 为元素解绑事件的兼容代码
 * @param element 元素对象
 * @param type 事件类型,字符串类型
 * @param func 事件处理函数(必须是命名函数)
 */
function removeEventListener(element,type,func){
    if(element.removeEventListener){
        element.removeEventListener(type,func,false);
    }else if(element.detachEvent){
        element.detachEvent("on"+type,func);
    }else{
        element["on"+type]=null;
    }

}

注意
1、第三种方式中
document.getElementById("id值").onclick=function(){
代码
}
对象.onclick转换成对象["onclick"]

上一篇下一篇

猜你喜欢

热点阅读