Gli ultimi tutorial di sviluppo web
 

HTML DOM addEventListener() Method

<Oggetto Element

Esempio

Fissare un evento click ad un <button> elemento. Quando l'utente fa clic sul pulsante, l'uscita "Hello World" in un <p> elemento con id = "demo":

document.getElementById("myBtn").addEventListener("click", function(){
    document.getElementById("demo").innerHTML = "Hello World";
});
Prova tu stesso "

Più "Try it Yourself" esempi di seguito.


Definizione e l'utilizzo

addEventListener() metodo attribuisce un gestore di eventi per l'elemento specificato.

Suggerimento: Utilizzare la removeEventListener() metodo per rimuovere un gestore di eventi che è stato allegato con addEventListener() metodo.

Suggerimento: utilizzare il documento. addEventListener() metodo per collegare un gestore di eventi al documento.


Supporto browser

I numeri nella tabella indicano la prima versione del browser che supporta pienamente il metodo.

Metodo
addEventListener() 1.0 9.0 1.0 1.0 7.0

Nota: addEventListener() metodo non è supportato in Internet Explorer 8 e versioni precedenti, e Opera 6.0 e versioni precedenti. Tuttavia, per queste versioni specifiche del browser, è possibile utilizzare attachEvent() metodo per associare i gestori di eventi (see "More Examples" below for a cross-browser solution) .


Sintassi

element .addEventListener( event , function , useCapture )

valori dei parametri

Parametro Descrizione
event Necessario. Una stringa che specifica il nome dell'evento.

Nota: Non utilizzare il "on" prefisso. Ad esempio, utilizzare "click" al posto di "onclick" .

Per un elenco di tutti gli eventi HTML DOM, guarda la nostra completa HTML DOM oggetto evento di riferimento .
function Necessario. Specifica la funzione da eseguire quando si verifica l'evento.

Quando si verifica l'evento, un oggetto evento viene passato alla funzione come primo parametro. Il tipo dell'oggetto evento dipende l'evento specificato. Ad esempio, il "click" evento fa parte dell'oggetto MouseEvent.
useCapture Opzionale. Un valore booleano che specifica se l'evento deve essere eseguito nella cattura o alla fase di bubbling.

Valori possibili:
  • vero - Il gestore di eventi viene eseguita in fase di cattura
  • Predefinito di falsi. Il gestore di eventi viene eseguito nella fase di bubbling

Dettagli tecnici

DOM Versione: Livello DOM 2 Eventi
Valore di ritorno: Nessun valore di ritorno
changelog: Il parametro useCapture è diventato opzionale in Firefox 6 e Opera 11.60 (has always been optional for Chrome, IE and Safari)

Esempi

Altri esempi

Esempio

Si può anche fare riferimento a un esterno "named" la funzione.

Questo esempio dimostra come eseguire una funzione quando un utente fa clic su un <button> elemento:

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

function myFunction() {
    document.getElementById("demo").innerHTML = "Hello World";
}
Prova tu stesso "

Esempio

È possibile aggiungere numerosi eventi allo stesso elemento, senza sovrascrivere gli eventi esistenti.

Questo esempio dimostra come aggiungere due eventi click sullo stesso <button> elemento:

document.getElementById("myBtn").addEventListener("click", myFunction);
document.getElementById("myBtn").addEventListener("click", someOtherFunction);
Prova tu stesso "

Esempio

È possibile aggiungere eventi di tipo diverso allo stesso elemento.

Questo esempio dimostra come aggiungere molti eventi sulla stessa <button> elemento:

document.getElementById("myBtn").addEventListener("mouseover", myFunction);
document.getElementById("myBtn").addEventListener("click", someOtherFunction);
document.getElementById("myBtn").addEventListener("mouseout", someOtherFunction);
Prova tu stesso "

Esempio

Quando si passa valori dei parametri, utilizzare una "anonymous function" che chiama la funzione specificata con i parametri:

document.getElementById("myBtn").addEventListener("click", function() {
    myFunction(p1, p2);
});
Prova tu stesso "

Esempio

Cambiare il colore di sfondo <button> elemento:

document.getElementById("myBtn").addEventListener("click", function(){
    this.style.backgroundColor = "red";
});
Prova tu stesso "

Esempio

Utilizzando il parametro useCapture opzionale per dimostrare la differenza tra spumeggiante e la cattura:

document.getElementById("myDiv").addEventListener("click", myFunction, true);
Prova tu stesso "

Esempio

Utilizzando il removeEventListener() metodo per rimuovere un gestore di eventi che è stato allegato con addEventListener() Metodo:

// Attach an event handler to <div>
document.getElementById("myDIV").addEventListener("mousemove", myFunction);

// Remove the event handler from <div>
document.getElementById("myDIV").removeEventListener("mousemove", myFunction);
Prova tu stesso "

Esempio

Per i browser che non supportano addEventListener() metodo, è possibile utilizzare attachEvent() metodo.

Questo esempio dimostra una soluzione cross-browser:

var x = document.getElementById("myBtn");
if (x.addEventListener) {                    // For all major browsers, except IE 8 and earlier
    x.addEventListener("click", myFunction);
} else if (x.attachEvent) {                  // For IE 8 and earlier versions
    x.attachEvent("onclick", myFunction);
}
Prova tu stesso "

Pagine correlate

JavaScript Tutorial: HTML DOM EventListener

HTML DOM Riferimento: documento. addEventListener()


<Oggetto Element