Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 基于URL添加活动菜单或导航类_Javascript_Html_Class_Menu - Fatal编程技术网

Javascript 基于URL添加活动菜单或导航类

Javascript 基于URL添加活动菜单或导航类,javascript,html,class,menu,Javascript,Html,Class,Menu,我在菜单项中添加了一个active类。但是,我当前的实现是将类添加到所有列表菜单项中,而不是当前页面的任何内容 请让我知道我当前的代码是否存在问题,以及我可以做些什么来实现预期的结果 <ul id="menu_items"> <li class="has-sub"><a href="/collections">STORE</a></li> <li><a href="/collections">RESEARCH

我在菜单项中添加了一个
active
类。但是,我当前的实现是将类添加到所有列表菜单项中,而不是当前页面的任何内容

请让我知道我当前的代码是否存在问题,以及我可以做些什么来实现预期的结果

<ul id="menu_items">
 <li class="has-sub"><a href="/collections">STORE</a></li>
 <li><a href="/collections">RESEARCH</a></li>
 <li><a href="/collections">INFO</a></li>
</ul>

$(function(){
        var current = location.pathname;
        $('#menu_items li a').each(function(){
            var $this = $(this);
            // if the current path is like this link, make it active
            if($this.attr('href').indexOf(current) !== -1){
                $this.addClass('active');
            }
        })
    })  
$(函数(){ var current=location.pathname; $('#菜单项li a')。每个(函数(){ var$this=$(this); //如果当前路径与此链接类似,请将其激活 if($this.attr('href').indexOf(当前)!=-1){ $this.addClass('active'); } }) })

.active{text decoration:underline;}

请检查URL,所有链接都是“/collections”

好的,尝试这种方式,希望它能工作

<ul id="menu_items">
<li><a href="#index">Index</a></li>
 <li class="has-sub"><a href="#store">STORE</a></li>
 <li><a href="#research">RESEARCH</a></li>
 <li><a href="#info">INFO</a></li>
</ul>
</html>

<Script>
 $("#menu_items li").bind("click", function(e){

 $("li").click(function() {
        $(this).siblings().find("a").removeClass("active");
        $(this).find("a").addClass("active")
    })
 })

</Script>
$(“#菜单项li”).bind(“单击”,函数(e){ $(“li”)。单击(函数(){ $(this).sides().find(“a”).removeClass(“active”); $(this.find(“a”).addClass(“活动”) }) })
这很有帮助,但是现在当我在索引页时,所有链接都有
活动的