为事件指定处理函数的方式

Posted Lu_Lu的攻城路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为事件指定处理函数的方式相关的知识,希望对你有一定的参考价值。

 

1:html事件处理程序

eg:<srcipt>

function showMessage(){

alert(“hello word!”);

}

</srcipt>

<input type=“button” value=“Click me”  onclick=“showMessage()”>

 

 

2:通过将一个函数赋值给一个事件处理程序属性

function fn1(){

alert(1);

}

function fn2(){

alert(2);

}

 

obj.onclick=fn1;

obj.onclick=fn2;

 

 

但此时fn2函数会覆盖fn1函数

 

3.

IE下:obj.attachEvent(事件名称,事件函数)  

1:没有捕获

2:事件名称有on

3:事件函数执行顺序:标准IE下正序,非标准下为倒序

4:this指向window

5:删除事件处理程序的操作为detachEvent(事件名称,事件函数)(但是添加的匿名函数不能被移除,因为要保证两次传入的参数完全相同才能删除)

eg:

var btn=document.getElementById(‘btn’);

var handler=function(){

alert(1);

}

btn.attachEvent(“onclick”,handler);

 

btn.detachEvent(“onclick”,handler);

 

标准浏览器下:obj.addEventListener(事件名称,事件函数,是否捕获)    false:冒泡   true:捕获

1:有捕获

2:事件名称没有on

3:事件函数执行顺序为正序

4:this指向触发该事件的对象

5:删除处理程序的操作为removeEventlistener(事件名称,事件函数,是否捕获)(但是添加的匿名函数不能被移除,因为要保证两次传入的参数完全相同才能删除)

 

以上是关于为事件指定处理函数的方式的主要内容,如果未能解决你的问题,请参考以下文章

《javascript高级程序设计》之事件

Reactreact概述组件事件

[转]javascript指定事件处理程序包括三种方式:

前端事件绑定知识点(面试常考)

JavaScirpt中的事件处理程序

深入理解js Dom事件机制——添加事件处理程序