addEventListener:支持大多数浏览器
attachEvent:支持ie8及以下
自定义绑定函数:
/* addEventListener中的this是绑定事件的对象 ,按钮 attachEvent中this是window 要统一this */ /* 自定义函数,用来为指定元素绑定响应函数 参数: --obj:要绑定事件的对象 --eventStr:事件的字符串(不要on) --callback:回调函数 */
function bind(obj,eventStr,callback){ // 用if判断该对象是否有addEventListener方法 if(obj.addEventListener){ // 大部分浏览器兼容方式 obj.addEventListener(eventStr,callback,false) }else{ // ie8及以下 obj.attachEvent("on"+eventStr,function(){ // 在匿名函数中调用回调函数 // 将this设置为绑定事件的对象,用来统一this callback.call(obj) }) } }