The addEventListener() method is used to attach an event handler to a particular element. It does not override the existing event handlers. Events are said to be an essential part of the JavaScript. A web page responds according to the event that occurred. Events can be user-generated or generated by API's. An event listener is a JavaScript's procedure that waits for the occurrence of an event.
The addEventListener() method is an inbuilt function of JavaScript. We can add multiple event handlers to a particular element without overwriting the existing event handlers.
Example
To see the effect when we click on the button.
<body>
<p>Example of the addEventListener() method.</p>
<p>Click the following button to see the effect.</p>
<button id="btn">Click me</button>
<p id="para"></p>
</body>
<script>
document.getElementById("btn").addEventListener("click", fun);
function fun() {
document.getElementById("para").innerHTML = "Namaste" + "<br>" + "Welcome to the JavaScript Documentation";
}
</script>
Output:
After clicking on the button, the output will be-
Example
Multiple events of a different type to the same element.
<body>
<p>Example of adding multiple events of different type to the same element.</p>
<p>Click the following button to see the effect.</p>
<button id="btn">Click me</button>
<p id="para"></p>
</body>
<script>
function func() {
btn.style.width = "50px";
btn.style.height = "50px";
btn.style.background = "yellow";
btn.style.color = "blue";
}
function func1() {
document.getElementById("para").innerHTML = "This is second function";
}
function func2() {
btn.style.width = "";
btn.style.height = "";
btn.style.background = "";
btn.style.color = "";
}
var mybtn = document.getElementById("btn");
mybtn.addEventListener("mouseover", func);
mybtn.addEventListener("click", func1);
mybtn.addEventListener("mouseout", func2);
</script>
Output:
When we hover on the button, the output will be-
After clicking on the button, the output will be-
Proper code:
<script>
let button = document.getElementById('btn');
let x = function(e) {
// console.log(e);
// console.log(e.target);
// console.log(e.path);
// console.log(e.type, e.clientX, e.clientY);
// console.log(e.currentTarget);
alert('hello!');
};
let y = function(e) {
alert('hey!');
};
button.addEventListener('click', x);
button.addEventListener('click', y);
let a = prompt("1 or 2?");
// below will not work
// if (a == '2') {
// button.removeEventListener('click', function(e) {
// alert('hello!');
// });
// }
if (a == '2')
button.removeEventListener('click', x);
</script>