Javascript 更改<;中项目的范围;导航>;向下滚动到具有特定id的元素时

Javascript 更改<;中项目的范围;导航>;向下滚动到具有特定id的元素时,javascript,html,css,twitter-bootstrap,Javascript,Html,Css,Twitter Bootstrap,在我的HTML+引导网页上,有一个。在导航栏中,我有: <li class="active"><a href="#">Home</a></li> 如果我单击,页面将转到带有标记action的元素: <h1 style="text-align: center;" id="about">About</h1> 关于 但在滚动之后,“主页”仍处于活动状态,“关于”仍处于非活动状态。 如何更改哪个处于活动状态?要切换类,需要使用

在我的HTML+引导网页上,有一个
。在导航栏中,我有:

<li class="active"><a href="#">Home</a></li>
如果我单击
  • ,页面将转到带有标记
    action
    的元素:

    <h1 style="text-align: center;" id="about">About</h1>
    
    关于
    
    但在滚动之后,“主页”仍处于活动状态,“关于”仍处于非活动状态。

    如何更改哪个
  • 处于活动状态?

    要切换类,需要使用一些Javascript:

        var menu = document.querySelector('<put direct parent of lists here (ex: .menu)>');
        var anchors = menu.getElementsByTagName('li');
    
        for (var i = 0; i < anchors.length; i += 1) {
          anchors[i].addEventListener('click', function() { clickHandler(anchors[i]) }, false);
        }
    
        function clickHandler(anchor) {
          var hasClass = anchor.getAttribute('class');
          if (hasClass !== 'active') {
            anchor.setAttribute('class', 'active');
          }
        }
    
    var菜单=document.querySelector(“”);
    var archors=menu.getElementsByTagName('li');
    对于(变量i=0;i<0.length;i+=1){
    锚点[i]。addEventListener('click',function(){clickHandler(锚点[i])},false);
    }
    函数clickHandler(锚定){
    var hasClass=anchor.getAttribute('class');
    如果(hasClass!=“活动”){
    setAttribute('class','active');
    }
    }
    

    希望这有帮助:)

    通过Javascript实现……@Put12co22mer2 K。如果您知道如何检测“滚动到具有特定id的元素”,请在回答中发布。如果您知道正在处理的代码,请共享当您单击“li”时使其滚动的js。@Put12co22mer2只有一个href=“#关于”在按钮元素上。@Put12co22mer2这是我的项目,整个项目中没有JS。。。
        var menu = document.querySelector('<put direct parent of lists here (ex: .menu)>');
        var anchors = menu.getElementsByTagName('li');
    
        for (var i = 0; i < anchors.length; i += 1) {
          anchors[i].addEventListener('click', function() { clickHandler(anchors[i]) }, false);
        }
    
        function clickHandler(anchor) {
          var hasClass = anchor.getAttribute('class');
          if (hasClass !== 'active') {
            anchor.setAttribute('class', 'active');
          }
        }