I want to get the "name" attribute of a div that was clicked and use it for another function using vanilla Javascript. I tried multiple solutions found on Stack Overflow, but nothing works. Can somebody help?
Here's what I tried (the version that made sense to me):
let navLinks = document.querySelectorAll(".navbar .item");
navLinks.forEach(function(link) {
link.addEventListener("click", function(e) {
let attr = e.target.getAttribute('name');
console.log(attr); //logs null
//openPage(".home");
});
});
<nav class="navbar">
<div class="container">
<div name="home" class="item active">
<div><img src="img/icons/home1.png"></div>
<div>Home</div>
</div>
<div name="faq" class="item">
<div><img src="img/icons/faq2.png"></div>
<div>FAQ</div>
</div>
<div name="calc" class="item cta_calc">
<div><img src="img/icons/dash1.png"></div>
</div>
<div name="about" class="item">
<div><img src="img/icons/info3.png"></div>
<div>About</div>
</div>
<div name="contact" class="item">
<div><img src="img/icons/info2.png"></div>
<div>Contact</div>
</div>
</div>
</nav>