我有一个导航栏,链接是通过foreach循环从数据库加载的,导航栏是静态的,只有内容在变化。当页面被加载并处于活动状态时,我想在链接中添加“Active”类。
我尝试了简单地在单击li
元素时添加类,但是当重新加载页面时,该类会消失。
这是我的HTML(它是由PHP foreach循环呈现的,因此它看起来不像硬编码)
<div class="sidebar-menu">
<ul class="sidebar-nav">
<li class="icon_links">
<a href="/home" class="links">
<div class="icon">
<i class="fa fa-tasks" aria-hidden="true"></i>
</div>
<div class="title">Dashboard</div>
</a>
</li>
<li class="icon_links">
<a href="/messaging" class="links">
<div class="icon">
<i class="fa fa-comments" aria-hidden="true"></i>
</div>
<div class="title">Messaging</div>
</a>
</li>
</ul>
</div>
JavaScript
$(document).ready(function() {
var selector = '.sidebar-nav li';
$(selector).on('click', function() {
$(selector).removeClass('active');
$(this).addClass('active');
});
});
li
将不会具有active
类。仅在单击时它才会添加类(根据您的代码)。您是否希望在页面重新加载时保持相同的高亮显示? - Samir