javascript - 单击时链接必须处于事件状态

标签 javascript jquery html

下面是我网站导航菜单的示例代码

<div class="container-fluid">
    <div class="row">
        <nav class="col-md-2 d-none d-md-block bg-light sidebar">
            <div class="sidebar-sticky">
                <ul class="nav flex-column">
                    <li class="nav-item">
                        <a class="nav-link active" href="user_dashboard.html">
                            <span data-feather="home"></span>
                            Dashboard <span class="sr-only">(current)</span>
                        </a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="Devices.html">
                            <span data-feather="file"></span>
                            My Devices
                        </a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="Request.html">
                            <span data-feather="shopping-cart"></span>
                            My Requests
                        </a>
                    </li>
                </ul>
            </div>
        </nav>
    </div>
</div>

我想要做的是,当我的页面打开时,第一个链接应该处于事件状态。当我单击第二个链接(在本例中:设备)时,它应该处于事件状态,而前一个链接必须变为非事件状态。我怎样才能做到这一点?

最佳答案

$(document).ready(function() {
  $(".nav li").removeClass("active"); //this will remove the active class from  
  //previously active menu item 
  $('#home').addClass('active');
  //for demo
  //$('#demo').addClass('active');
});
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

<div class="container-fluid">
  <div class="row">
    <div class="col-md-2">
      <div class="nav-collapse">
        <ul class="nav">
          <li id="home" class="active"><a href="#">Home</a></li>
          <li><a href="#">About Us</a></li>
          <li><a href="#">Port Polio</a></li>
          <li><a href="#">Gallery</a></li>
          <li id="demo"><a href="#">Contact Us</a></li>
        </ul>
      </div>
    </div>
  </div>
</div>

below code is for horizontal navbar

在每个页面中添加此脚本和平,并根据您的页面更改括号内的数字,例如:如果您想激活第三个链接,请将其设置为 li:eq(3)

对于索引页,其 li:eq(0), 对于默认页面,其 li:eq(1), 对于联系我们页面,其 li:eq(2)

<script>
        $(function () { $('.navbar-nav li:eq(2)').addClass('active'); });
</script>

关于javascript - 单击时链接必须处于事件状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50791413/

相关文章:

javascript - 如何使用 JavaScript 将长数组拆分为更小的数组

jquery - 使用向上/向下箭头选择 div

javascript - 如何访问$(this)里面sweetalert,里面AJAX成功

javascript - 更改 img 在 fc-content fullcalendar 中的位置

javascript - 检查PDF是否已加载

html - 收缩时 Flex 元素的位置位于其他 Flex 元素之上

html - 如何在 x 轴的两侧(+ve 和 -ve)过渡?

javascript - 我如何使用 jQuery 的这个对象?

javascript - 无法清除 bootstrap datepicker input-daterange 中的日期范围

javascript - Codeigniter Jquery Ajax : How to loop returned data as html