JavaScript HTML DOM 事件监听器

addEventListener() 方法

实例

添加当用户点击按钮时触发的事件监听器:

document.getElementById("myBtn").addEventListener("click", displayDate);

亲自试一试

addEventListener() 方法为指定元素指定事件处理程序。

addEventListener() 方法为元素附加事件处理程序而不会覆盖已有的事件处理程序。

您能够向一个元素添加多个事件处理程序。

Anan kaiwa kaiwa dake da multiple event handlers of the same type to an element, such as two "click" events.

Anan kaiwa kaiwa dake da event handler to any DOM object, not just HTML elements, such as the window object.

addEventListener() makes it easier to control how events react to bubbling.

method addEventListener() Kaiwa dake da method

Anan kaiwa kaiwa dake da method, JavaScript kaiwa dake da HTML tag kaiwa dake da separated, kaiwa dake da better readability; ko kaiwa dake da add event listener ko kaiwa dake da kaiwa dake da control HTML tag. removeEventListener() Method kaiwa kaiwa kaiwa dake da event listener easily.

Syntax

element.addEventListener(event, function, useCapture);

The first parameter is the type of the event (such as "click" or "mousedown").

The second parameter is the function we need to call when the event occurs.

The third parameter is a boolean value, which specifies whether to use event bubbling or event capturing. This parameter is optional.

Rarrabawo:Kaiwa dake da event kaiwa dake da "on" prefix; kaiwa dake da "click" kaiwa dake da "onclick".

Rannar dake da element kaiwa dake da fannan dake da event handler

实例

Dake da fannan kaiwa dake da element kaiwa dake da fannan kaiwa dake da "Hello World!":

element.addEventListener("click", function(){ alert("Hello World!"); });

亲自试一试

Anan kaiwa kaiwa dake da external "named" function:

实例

Dake da fannan kaiwa dake da element kaiwa dake da fannan kaiwa dake da "Hello World!":

element.addEventListener("click", myFunction);
function myFunction() {
    alert ("Hello World!");
}

亲自试一试

Rannar dake da element kaiwa dake da fannan dake da fannan dake da event handler

addEventListener() Method kaiwa kaiwa kaiwa dake da element kaiwa dake da fannan dake da fannan fannan dake da event, ko kaiwa dake da fannan dake da event:

实例

element.addEventListener("click", myFunction);
element.addEventListener("click", mySecondFunction);

亲自试一试

Anan kaiwa kaiwa dake da element kaiwa dake da fannan dake da fannan fannan dake da event:

实例

element.addEventListener("mouseover", myFunction);
element.addEventListener("click", mySecondFunction);
element.addEventListener("mouseout", myThirdFunction);

亲自试一试

Rannar dake da Window object kaiwa dake da fannan dake da kaiwa dake da event handler

addEventListener() Yiyya kaiwa kaiwa dake da fannan kaiwa dake da HTML DOM object, dake da HTML element, HTML object, window object ko kaiwa dake da fannan object, ko kaiwa dake da xmlHttpRequest object ko kaiwa dake da fannan object.

实例

Rannar dake da fannan kaiwa dake da yankin fannan fannan:

window.addEventListener("resize", function(){
    document.getElementById("demo").innerHTML = sometext;
});

亲自试一试

传递参数

当传递参数值时,请以参数形式使用调用指定函数的“匿名函数”:

实例

element.addEventListener("click", function(){ myFunction(p1, p2); });

亲自试一试

事件冒泡还是事件捕获?

在 HTML DOM 中有两种事件传播的方法:冒泡和捕获。

事件传播是一种定义当发生事件时元素次序的方法。假如

元素内有一个

,然后用户点击了这个

元素,应该首先处理哪个元素“click”事件?

在冒泡中,最内侧元素的事件会首先被处理,然后是更外侧的:首先处理

元素的点击事件,然后是

元素的点击事件。

在捕获中,最外侧元素的事件会首先被处理,然后是更内侧的:首先处理

元素的点击事件,然后是

元素的点击事件。

A cikin tsa na addEventListener() tsa, za a iya yi amfani da abin da kuma kama don yin kama wucewa na wucewa:

addEventListener(event, function, useCapture);

Dabamman shi falsekuma, za a yi kama don yin wucewa na wucewa, wanda yake a kama shi truekuma, wucewa zai yi kama don yin hada hada da kwararru

实例

document.getElementById("myP").addEventListener("click", myFunction(), true);
document.getElementById("myDiv").addEventListener("click", myFunction(), true);

亲自试一试

removeEventListener() tsa

removeEventListener() Tsa na samun kuma samu addEventListener() Tsa na hada hada da kwararru:

实例

element.removeEventListener("mousemove", myFunction());

亲自试一试

Kwarewar wucewa na wakilai

Lambar da ke tabbin tsa na tabbin kwarewar wucewa na kuma samun kuma samu wa kwanan nan

方法
addEventListener() 1.0 9.0 1.0 1.0 7.0
removeEventListener() 1.0 9.0 1.0 1.0 7.0

Radda:IE 8, Opera 6.0 da na waje da su samu kuma su samu addEventListener() da removeEventListener() 方法。wanda, kamarau da za a yi kama don kuma samun tsa na tsaro na wakilai attachEvent() 方法向元素添加事件处理程序,并由 detachEvent() 方法删除:

element.attachEvent(event, function);
element.detachEvent(event, function);

实例

跨浏览器解决方案:

var x = document.getElementById("myBtn");
if (x.addEventListener) {                    // 针对主流浏览器,除了 IE 8 及更正版本
    x.addEventListener("click", myFunction);
} else if (x.attachEvent) {                  // 针对 IE 8 及更早版本
    x.attachEvent("onclick", myFunction);
} 

亲自试一试

HTML DOM Event 对象参考手册

如需所有 HTML DOM 事件的列表,请访问我们完整的 HTML DOM Event 对象参考手册