Jquery 突出显示导航下拉列表

Jquery 突出显示导航下拉列表,jquery,navigation,Jquery,Navigation,我想突出显示我的下拉链接,但也要突出显示该下拉列表顶部的链接。如果您查看并单击任何下拉列表中的最后一个链接,它们都会非常有效(它们会突出显示自己的“li”和父“li”)。我就是搞不懂为什么每个下拉列表中只有最后一个链接才是我想要的。我原以为“父母”会把所有的祖先“李”都带走 我的剧本是这样的: $(document).ready(function(){ "use strict"; var currentPageUrl = location.href; $('.nk-nav li

我想突出显示我的下拉链接,但也要突出显示该下拉列表顶部的链接。如果您查看并单击任何下拉列表中的最后一个链接,它们都会非常有效(它们会突出显示自己的“li”和父“li”)。我就是搞不懂为什么每个下拉列表中只有最后一个链接才是我想要的。我原以为“父母”会把所有的祖先“李”都带走

我的剧本是这样的:

$(document).ready(function(){
    "use strict";
  var currentPageUrl = location.href;
  $('.nk-nav li a').each(function(){
      $(this).parents("li").toggleClass('active', this.href === currentPageUrl);
  });
});
我不知道为什么它“部分”起作用…
我不认为这是因为你的剧本

您会注意到
console.log(currentPageUrl)返回完整地址。
(包括)

您的脚本将其与相对URL进行比较。
(无)

所以它不可能经常匹配。

所以这里有一个脚本我建议你试试

$(document).ready(function(){
  "use strict";

  var currentPageUrl = location.href;
  console.log(currentPageUrl);

  $('.nk-drop-item').find('a').each(function(){
    if( "http://rezolve.4pixels.com"+ $(this).attr("href") === currentPageUrl ){
      $(this).closest(".nk-drop-item").addClass('active');
    }
  });
});

但我不知道是否会对实际突出显示的内容产生干扰

谢谢你,卢伊斯,我现在明白了,比较这两个地址并不是每次都给我一个肯定的结果。现在它突出了我的顶部导航,这是最重要的。