Metode EventTarget.addEventListener()
meregister event listener untuk event yang ditetapkan kepada Obj yang ada.
Sintaks:
Obj.addEventListener(type, listener, useCapture)
- Obj bisa elemen HTML, CommentNode, document, DocumentFragment, TextNode, window, XMLDocument, atau XMLHttpRequest.
- type adalah string yang menetapkan nama event yang ingin diregister, misal: 'click', 'abort', 'error', 'blur', 'focus', 'change', 'load', 'mousedown', 'mousemove', dll.
- function adalah event listener yang akan dipanggil ketika event itu terjadi.
- useCapture adalah boolean, nilai
true
meregister event listener untuk CAPTURING_PHASE, sedangkan nilaifalse
meregister event listener untuk BUBBLING_PHASE.
Contoh di bawah ini meregister event listener untuk event 'click' di elemen BUTTON ber-ID 'buttonID':
<BUTTON TYPE="button" ID="buttonID">Klik disini</BUTTON>
<SCRIPT TYPE="text/javascript">
function makeAlert() {
alert("Halo dunia!");
}
var buttonElem = document.getElementById("buttonID");
buttonElem.addEventListener("click", makeAlert, false);
</SCRIPT>
Gunakan metode EventTarget.removeEventListener() untuk menghapus event listener yang telah diregister via metode EventTarget.addEventListener()
.
Metode EventTarget.addEventListener()
tidak bekerja untuk IE di bawah versi IE9. Untuk IE di bawah IE9, gunakan metode attachEvent()
untuk meregister event listener dan gunakan metode setCapture()
untuk menetapkan apakah event listener perlu diregister untuk CAPTURING_PHASE atau BUBBLING_PHASE.