getElementsByClassName get single element

337 Views Asked by At

I need to add an EventListener function on every div with a certain class, I tried this:

 var a = document.getElementsByClassName('linkto');

 for (var i = 0; i<a.length;i++) {
 a[i].addEventListener('click',function(){
 console.log(a);
 }); }

But that gives me all the divs. My divs are generated in a foreach loop:

 @foreach($faqs['My_Stay'] as $faqheading)
      <div class="row  lowboarder linkcolor-darkblue linkto">
          {{ link_to('#div'.$faqheading->id,$faqheading->heading) }}
      </div>
 @endforeach

Is there a good way to determine which div was clicked on?

1

There are 1 best solutions below

0
On BEST ANSWER

try like below, "this" inside your click function refer to the clicked div

for (var i = 0; i<a.length;i++) {
 a[i].addEventListener('click',function(){
 console.log(this.innerText);
 }); }