首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js 添加事件 attachEvent 跟 addEventListener 的用法

2013-11-29 
js 添加事件 attachEvent 和 addEventListener 的用法一般我们在JS中添加事件,是这样子的功能非常强悍,解

js 添加事件 attachEvent 和 addEventListener 的用法
一般我们在JS中添加事件,是这样子的



功能非常强悍,解决IE的this指向问题,event总是作为第一个参数传入,跨浏览器就更不在话下。

最后贡献一个HTML5工作组的版本:
01var addEvent=(function(){02if(document.addEventListener){03return function(el,type,fn){04if(el.length){05for(var i=0;i<el.length;i++){06addEvent(el[i],type,fn);07}08}else{09el.addEventListener(type,fn,false);10}11};12}else{13return function(el,type,fn){14if(el.length){15for(var i=0;i<el.length;i++){16addEvent(el[i],type,fn);17}18}else{19el.attachEvent(‘on‘+type,function(){20return fn.call(el,window.event);21});22}23};24}25})();


可能细心的读者发现了IE的attachEvent和W3C标准的addEventListener绑定多个事件的执行顺序是不一样的。
Dean Edwards的版本么怎么看明白,虽然功能强悍,但感觉有点复杂了,若有看懂的朋友帮忙给解释一下!

热点排行