-
onclick这种写法是DOM0级规范的写法,是所有的浏览器支持的,但是这种写法有一些弊端:
-
这种写法不能同时绑定多个事件
-
这种写法使代码耦合在了一起
-
addEventListener() 是DOM2标准中定义的方法,它可以控制是在事件捕获阶段或者是在冒泡阶段调用事件处理程序(由这个函数的第三个参数决定true/false),既然这个是DOM2标准中定义的,那么只有支持DOM2级事件处理程序的浏览器才支持这个方法(IE9,Firefox,Safari,Chrome和Opera都支持这个)。
-
例如你这么写 xxx.onclick = method1; xxx.onclick = method2; xxx.onclick = method3; 如果这样写,那么将会只有medhot3被执行 如果你这么写 xxx.attachEvent(“onclick”,method1); xxx.attachEvent(“onclick”,method2); xxx.attachEvent(“onclick”,method3); 都会执行而且执行顺序为method3->method2->method1