[f]事件绑定函数和解除绑定函数

IE: attachEvent(事件名, 函数)、detachEvent(事件名, 函数);

FF: addEventListener(事件名, 函数, 是否捕获)、removeEventListerner(事件名, 函数, 是否捕获)      

 1 function bindHandler(obj, sEvent, fnHandler)    //对象、事件、函数
 2 {
 3     if(obj.attachEvent)
 4     {
 5         obj.attachEvent('on'+sEvent, fnHandler);
 6     }
 7     else
 8     {
 9         obj.addEventListener(sEvent, fnHandler, false);
10     }
11 }

事件解绑时,addEventListener()和removeEventListener()中必须是同一个函数参数,必须是单独定义一个函数,匿名函数是不行的!

 1 function removeHandler(obj, sEvent, fnHandler)    //对象、事件、函数
 2         {
 3             if(obj.attachEvent)
 4             {
 5                 obj.detachEvent('on'+sEvent, fnHandler);
 6             }
 7             else
 8             {
 9                 obj.removeEventListener(sEvent, fnHandler, false);
10             }
11         }
原文地址:https://www.cnblogs.com/niubenbit/p/2740107.html