NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
[TOC] # 1.1注册事件概述 给元素添加事件,称为**注册事件**或者**绑定事件**。 注册事件有**两种方式**:**传统方式和方法监听注册方式** ## 传统注册方式 ●利用 on开头的事件onclick ● </button ●btn.onclick = function() { } ●特点:注册事件的**唯一性** ●**同一个元素**同**一个事件**只能**设置一 个处理函数**,**最后注册的处理函数**将会**覆盖前面注册的处理函数** ## 方法监听注册方式 ●w3c 标准推荐方式 ●addEventListener0它是一个方法 ●IE9之前的IE不支持此方法,可使用attachEvent0代替 ●特点:同一个元素同一个事件可以注册多个监听器 ●按注册顺序依次执行 # 1.2 addEventListener事件监听方式 ~~~ eventTarget.addEventListener (type, listener [, useCapture] ) 获取的对象.方法 ('事件属性',函数方法) ~~~ ![](https://img.kancloud.cn/a4/42/a442a50bc3c4641d04761a9faa4b0a86_713x143.png) eventTarget.addEventListener ()方法将指定的监听器注册到eventTarget (目标对象)上,当该对象触发指定的事件时,就会执行事件处理函数。 ## 该方法接收三个参数: ●**type**:事件类型字符串,比如click、mouseover ,注意这里不要带on ●**listener**:事件处理函数,事件发生时,会调用该监听函数 ●**useCapture**:可选参数,是一个布尔值,默认是false。 学完DOM事件流后,我们再进一 步学习 ## 代码验证 ![](https://img.kancloud.cn/47/7d/477dd8d5031e6c7b09a354a97f3376d5_993x719.png) # 1.3 attachEvent 事件监听方式 (了解即可) ![](https://img.kancloud.cn/d8/f5/d8f591bb12ee77482e57a435ade1c2f8_1030x327.png) # 1.4注册事件兼容性解决方案 **兼容性处理的原则:首先照顾大多数浏览器,再处理特殊浏览器** ![](https://img.kancloud.cn/d6/be/d6bea627d7510a9cc6611f37b1469751_958x412.png)