Mein Code funktioniert nur für die erste "a" Kind. Arbeitet nicht am Rest "ein" Kind. Warum?Reine JavaScript: Toggle Links aktiv
Es gibt einige Lösungen im Internet, aber in jQuery. Ich bevorzuge reines JavaScript.
document.querySelector('a').addEventListener('click', active);
function active() {
document.querySelector('a').classList.remove('active');
this.classList.add('active');
}
.topnav {
overflow: hidden;
background-color: grey;
}
.topnav a {
float: left;
display: block;
color: #f2f2f2;
text-align: center;
padding: 10px;
text-decoration: none;
}
.topnav a:hover {
background-color: #ddd;
color: black;
}
.topnav a.active {
background-color: red;
color: white;
}
<div class="topnav">
<a class="active" href="#home">Home</a>
<a href="#news">News</a>
<a href="#contact">Contact</a>
<a href="#about">About</a>
</div>
Unrelated aber .. „Ich ziehe es reine JavaScript ", * warum?" –
Ursache 'document.querySelector ('a')' only gibt das * erste gefundene Element * zurück –