How to add event listener to multiple elements in JavaScript
In this tutorial, we are going to learn about how to add an event listener to multiple html elements using JavaScript.
Normally, we add an event listener to the single element using the addEventListener()
method.
// accessing the element
const element = document.querySelector('.blue');
// adding the event listener
element.addEventListner('click', (e)=>{
console.log('someone hit me');
});
Adding event listener to multiple elements
To add the event listener to the multiple elements, first we need to access the multiple elements with the same class name
or id
using document.querySelectorAll()
method then we need to loop through each element using the forEach()
method and add an event listener to it.
// accessing the elements with same classname
const elements = document.querySelectorAll('.my-box');
// adding the event listener by looping
elements.forEach(element => {
element.addEventListner('click', (e)=>{ console.log('someone hit me'); });});
If your elements having different class-names rather than the same class name, you can add it like this.
const element1 = document.querySelector('.red');
const element2 = document.querySelector('.blue');
const element3 = document.querySelector('.green');
[element1, element2, element3].forEach((element)=>{
element.addEventListner('click', (e)=>{
console.log('someone hit me');
});
});