代码如下: 复制代码 代码如下: var br={}; br.eventRouter = {}; br.eventRouter.addListen = function(el,eventType,func){ if(!el.eventObjs){ el.eventObjs = {}; } if(!el.eventObjs[eventType]){ el.eventObjs[eventType]=[]; br.eventRouter.bindListen(el,eventType); } el.eventObjs[eventType].push(func); }; br.eventRouter.removeListen = function(el,eventType,func){ if(el.eventObjs && el.eventObjs[eventType]){ for(var i=0,len=el.eventObjs[eventType].length;i<len;i++){ var item = el.eventObjs[eventType][i]; if(func==item){ el.eventObjs[eventType].splice(i,1); return true; } } } return false; }; br.eventRouter.bindListen = function(el,eventType){ if(el.eventObjs && el.eventObjs[eventType]){ el[eventType] = function(e){ for(var i=0,len=el.eventObjs[eventType].length;i<len;i++){ var f = el.eventObjs[eventType][i]; f.call(el,e); } }; } }; 代码比较简单,不做过多解释。也希望有兴趣的同学给出bug。
推荐阅读
经典的间隔时间滚动新闻(图片),可控制滚动
经典的间隔时间滚动新闻(图片),可控制滚动
*{margin:0;padding:0;border:0;list-style:none;}
body{font:12px Verdana, Geneva, sans-serif;line-height:18px;color:#333;}
a{text-decoration:>>>详细阅读
本文标题:javascript 传统事件模型构造的事件监听器实现代码
地址:http://www.17bianji.com/kaifa2/JS/26282.html
1/2 1