浅谈JavaScript事件绑定的常用方法及其优缺点分析
传统方式
element.onclick = function(e){ // ... };
1. 传统绑定的优点
非常简单和稳定,可以确保它在你使用的不同浏览器中运作一致
处理事件时,this关键字引用的是当前元素,这很有帮组
2. 传统绑定的缺点
传统方法只会在事件冒泡中运行,而非捕获和冒泡
一个元素一次只能绑定一个事件处理函数。新绑定的事件处理函数会覆盖旧的事件处理函数
事件对象参数(e)仅非IE浏览器可用
W3C方式
element.addEventListener('click', function(e){ // ... }, false);
1. W3C绑定的优点
该方法支持事件处理的捕获和冒泡阶段。事件阶段取决于addEventListener的参数设置false (冒泡) 或 true (捕获)。
在事件处理函数内部,this关键字引用当前元素。
事件对象总是可以通过处理函数的第一个参数(e)捕获。
可以为同一个元素绑定你所希望的多个事件,并不会覆盖先前绑定的事件
2. W3C绑定的缺点
IE不支持,你必须使用IE的attachEvent函数替代。
IE方式
element.attachEvent('onclick', function(){ // ... });
1. IE方式的优点
可以为同一个元素绑定你所希望的多个事件,并不会覆盖先前绑定的事件。
2. IE方式的缺点
IE仅支持事件捕获的冒泡阶段
事件监听函数内的this关键字指向了window对象,而不是当前元素(IE的一个巨大缺点)
事件对象仅存在与window.event参数中
事件必须以ontype的形式命名,比如,onclick而非click
仅IE可用。你必须在非IE浏览器中使用W3C的addEventListener
Dean Edwards的方案(addEvent/removeEvent库)
1. addEvent的优点
可以在所有浏览器中工作,就算是更古老无任何支持的浏览器
this关键字可以在所有的绑定函数中使用,指向的是当前元素
中和了所有防止浏览器默认行为和阻止事件冒泡的各种浏览器特定函数
不管浏览器类型,事件对象总是作为第一个对象传入
2. addEvent的缺点
仅工作在冒泡阶段(因为它深入使用事件绑定的传统方式)
以上就是长沙网络推广为大家带来的浅谈JavaScript事件绑定的常用方法及其优缺点分析全部内容了,希望大家多多支持狼蚁SEO~
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程