1. 事件的绑定:为同一个元素绑定多个相同的事件
2. 三种方式
(1)对象.on事件名字=事件处理函数
my$("btn").onclick=function(){};
如果是多个相同事件注册用这种方式,最后一个执行,之前的被覆盖了
(2) 对象.addEventListener("没有on的事件名字",事件处理函数,false);
--谷歌和火狐支持,IE8不支持
my$("btn").addEventListener("click",function(){},false);
参数1:事件的类型---事件的名字,没有on
参数2:事件处理函数---函数(命名函数,匿名函数)
参数3:布尔类型,目前就写false
//为同一个元素绑定多个相同的事件 my$("btn").addEventListener("click",function () { console.log("你好啊"); },false); my$("btn").addEventListener("click",function () { console.log("你吃饭了吗"); },false);
(3)对象.attachEvent("有on的事件名字",事件处理函数);
--谷歌不支持,火狐不支持,IE8支持
参数1:事件类型---事件名字,有on
参数2:事件处理函数---函数(命名函数,匿名函数)
my$("btn").attachEvent("onclick",function(){});
my$("btn").attachEvent("onclick",function () { console.log("小杨好帅哦1"); }); my$("btn").attachEvent("onclick",function () { console.log("小杨好帅哦2"); });
3.兼容代码
//为任意元素.绑定任意的事件, 任意的元素,事件的类型,事件处理函数 function addEventListener(element,type,fn) { //判断浏览器是否支持这个方法 if(element.addEventListener){ element.addEventListener(type,fn,false); }else if(element.attachEvent){ element.attachEvent("on"+type,fn); }else{ element["on"+type]=fn; } }