onclick
btn.onclick = function() {}
特点:注册事件的唯一性
同一个元素同一个事件只能设置一个处理函数,最后注册的处理函数将会覆盖前面注册的处理函数(比如说写两次btn.onclick...事件发生时会在元素节点之间按照特定的顺序传播,这个传播过程即DOM事件流....第三个参数是true,表示在事件捕获阶段调用事件处理程序;如果是false,(不写默认就是false),表示事件在冒泡阶段调用事件处理程序....我们试一下就能理解了
实际开发中我们很少使用事件捕获,我们更关注事件冒泡
有些事件是没有冒泡的,比如onblur/onfocus/onmouseenter/onmouseleave
事件冒泡有时候会带来麻烦...,比如判断用户按下了哪个键
事件对象也有兼容性的问题,IE678通过window.event 兼容性的写法: e || window.event
官方解释: event对象代表事件的状态,比如键盘按键,