三种注册事件方式的封装

 function addEventListener(element,eventName,fn){
            //判断当前浏览器是否能支持 addEventListener 方法,ie9以下不支持
            if(element.addEventListener){
                element.addEventListener(evementName,fn)
            //ie9及以上不支持
            }else if(element.attachEvent){
                element.attachEvent(‘on‘ + eventName,fn)
            }else{
            //传统流事件注册,兼容性好,但是无方法监听效果
                element[‘on‘ + eventName] = fn
            }
        }
 
//解绑事件,使事件只触发一次
function removeEventListener(element,eventName,fn){
            if(element.removeEventListener){
                element.removeEventListener(eventName,fn)
            }else if(element.detachEvent){
                element.detachEvent(‘on‘ + eventName, fn)
            }else{
                element[‘on‘ +eventName] = null;
            }
        }
 

相关推荐