javascript - 我使用jquery的toggleClass来添加和删除,但它是( <li> ) <a> 链接列表

标签 javascript jquery html

<ul class="nav">
    <li>
        <a href="/dashboard">
            <i class="material-icons">dashboard</i>
            <p>Dashboard</p>
        </a>
    </li>
    <li>
        <a href="profile">
            <p>User Profile</p>
        </a>
    </li>
</ul>

现在我想要的是,如果我点击其中一个它就会变得活跃,所以我所做的是 -

   $(document).ready(function() {
  $('li').bind('click', function() {
    $( this ).addClass('active');
  });
});

但问题是它在加载页面后没有应用类,所以我希望在加载页面后应用它我也尝试了toggleClass

$('li').on('click', function() {
  $(this).parent().toggleClass('active'); 
});

任何建议..谢谢..

最佳答案

1.突出显示 <a>基于当前页面:-

$(document).ready(function(){
   var url = location.pathname;// Returns path
   $('.nav li a').each(function(){
     if(url.indexOf($(this).attr('href'))!== -1){
       $(this).addClass('active'); 
     }
   }
});

2.OR 突出显示 <li>基于当前页面:-

$(document).ready(function(){
   var url = location.pathname;// Returns path
   $('.nav li a').each(function(){
     if(url.indexOf($(this).attr('href'))!== -1){
      $(this).closest('li').addClass('active');
     }
   }
});

关于javascript - 我使用jquery的toggleClass来添加和删除,但它是( <li> ) <a> 链接列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46110036/

相关文章:

javascript - 如何在 typescript 中获取异步函数的返回类型?

jquery - jQuery 中如何知道 body 中的哪个元素触发了 AJAX 请求

JavaScript 数组

html - 语义 HTML 和 BEM CSS

javascript - CSS/JS/Jquery 中的 SVG 发光效果

javascript - 省略号 trim 段落的 setInterval 函数

javascript - 测试innerHTML的部分字符串

javascript - 如何从另一个函数停止函数然后使用另一个参数再次启动它

jquery - Bootstrap Modal 消失但看不到内容

jquery - 使用 DOMSubtreeModified 突变事件。在 jQuery 中