Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.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 jQuery脚本不会添加活动类_Javascript_Jquery_Navigation - Fatal编程技术网

Javascript jQuery脚本不会添加活动类

Javascript jQuery脚本不会添加活动类,javascript,jquery,navigation,Javascript,Jquery,Navigation,我得到了这个jQuery脚本,它应该将类“active”添加到我的li中,但它没有。脚本如下: jQuery(function() { var pgurl = jQuery(location).attr('href'); console.log(pgurl); jQuery("ul.pagesubmenu-ul li a").each(function(){ if(jQuery(this).attr("href") == pgurl) jQuery(this).pa

我得到了这个jQuery脚本,它应该将类“active”添加到我的li中,但它没有。脚本如下:

jQuery(function() {
 var pgurl = jQuery(location).attr('href');
 console.log(pgurl);
 jQuery("ul.pagesubmenu-ul li a").each(function(){
      if(jQuery(this).attr("href") == pgurl)
      jQuery(this).parent().addClass("active");
 })
}))

我真的不知道为什么它不起作用。我正在尝试使用它(在主导航下面的子导航中)


提前谢谢

您可以通过jquery的href属性直接选择它,而不是循环所有链接:

$(function() {
    $("a[href='" + location.href + "']").parent().addClass('active');
});
请注意,如果您在站点中使用相对url,则
location.href
将返回包含主机和方案的完整url:

$(function() {
    $("a[href='" + location.pathname + "']").parent().addClass('active');
});
此外,您还可以使用一些字符作为通配符:

= is exactly equal
!= not equal
^= starts with
$= ends with
*= contains
~= contains word
|= starts with prefix

在这些链接中没有一个精确匹配<代码>pgurl正在显示
http://xn--fnpark-pua9l.dk/konference-ny/
,但是

为什么不工作?你能用你的导航结构做一个JSFIDLE吗

HTML

JQUERY

jQuery(函数(){
$(“ul.page li ul.subpage li a”)。每个(函数(){
$(this.addClass('active');
});
});


如果您确定
href
属性的url与
位置
对象类似,通常href标记不包含域名(用于相对路径),请首先检查是否将执行if条件。检查debug或add alert to if条件,确保代码jQuery(this.parent().addClass(“active”);这里的正则表达式不合法吗?URL可能包含搜索路径(/link?q=test)。无论如何,你已经得到了我的+1,谢谢!我想正则表达式也可以,但这不是我的强项:)@taxicala-谢谢你的回复!我刚刚尝试使用您的脚本,但出现了一个错误:无法识别的表达式:a[href=对不起,我忘记了一些引语,我已经更新了我的答案。@taxicala-非常感谢!它像一个符咒一样工作!我将使用这个而不是我自己的脚本:)这很有意义!非常感谢你的回复!我将把这个标记为正确的,因为这是它不起作用的原因:)我很高兴我能提供帮助。我建议你检查一下还有一些其他答案。从长远来看,提到的方法可能会使您的代码更具可读性。我将使用taxicala建议的方法。比我自己的代码更干净、更好!:)