Я искал различные ответы по той же проблеме, но ни одна из них не соответствовала моей проблеме. У меня есть навигация, которая частично жестко закодирована и управляется базой данных, и я хочу применить класс к элементу, который был нажат. Я пробовал эту простую функцию JS, но она не работает.Как применить класс к выбранному элементу в навигации?
<ul id="menu">
<li onclick="funk(this)"><a href="index.php">Home</a></li>
<?php
$query=mysqli_query($conn,"SELECT * FROM categories");
while($row=mysqli_fetch_array($query)){
$cat_id=$row['cat_id'];
$cat_title=$row['cat_title'];
echo "<li onclick='funk(this)'><a href='index.php?cat=$cat_id'>$cat_title</a></li>";
}
?>
</ul>
function funk(el) {
var kids = document.getElementById("menu").children;
for(var i = 0; i < kids.length; i++){
kids[i].className="c1";
}
el.className="c2";
}
.c2{background-color:#f65;}
.c1{background-color:#000;}
Кто-нибудь?
Я вижу jquery в тегах, но код ?! –
Ваш текущий код должен это сделать. Вы нажимаете элемент '' и, следовательно, обновляете страницу? –
, скорее всего, после нажатия на якорь, он перенаправляет и сбрасывает его, чтобы он выглядел как будто ничего не произошло – Ghost