核心提示:之前一直使用addEventListener来绑定事件,后来发现这个方法在ie低版本不支持,ie低版本支持的是attachEvent,他和addEventListener的不同之处是第二个参数事件名要...
之前一直使用addEventListener来绑定事件,后来发现这个方法在ie低版本不支持,ie低版本支持的是attachEvent,他和addEventListener的不同之处是第二个参数事件名要多加个“on”,比如“onclick”,而且他的this指向的是window,在使用的时候需要改变this指向,下面是一个兼容的写法
var Event = {}; Event.addEvents = function(target,eventType,handle){ if(document.addEventListener){ Event.addEvents = function(target,eventType,handle){ target.addEventListener(eventType,handle,false); }; }else{ Event.addEvents = function(target,eventType,handle){ target.attachEvent('on'+eventType,function(){ handle.call(target,arguments); }); }; }; Event.addEvents(target,eventType,handle); };
调用方法:
Event.addEvents(document,"click",function(){ alert(ok) });