Javascript 页面刷新后导航上的活动状态

Javascript 页面刷新后导航上的活动状态,javascript,jquery,html,nav,Javascript,Jquery,Html,Nav,这是我目前正在使用的代码,用于在您单击其中一个导航并且页面已重定向后向项目添加活动状态 我想知道是否有其他方法可以实现这一点,因为它只在本地机器上工作,而在服务器上不工作 $(document).ready(function () { current_page = document.location.href if (current_page.match(/home/)) { $("ul#ulMe

这是我目前正在使用的代码,用于在您单击其中一个导航并且页面已重定向后向项目添加活动状态

我想知道是否有其他方法可以实现这一点,因为它只在本地机器上工作,而在服务器上不工作

 $(document).ready(function () {         
        current_page = document.location.href            
        if (current_page.match(/home/)) {
            $("ul#ulMenuNav li:eq(0) a").addClass('navActive');
        } else if (current_page.match(/about/)) {
            $("ul#ulMenuNav li:eq(1) a").addClass('navActive');
        } else if (current_page.match(/location/)) {
            $("ul#ulMenuNav li:eq(2) a").addClass('navActive');
        } else if (current_page.match(/staff/)) {
            $("ul#ulMenuNav li:eq(3) a").addClass('navActive');
        } else if (current_page.match(/contact/)) {
            $("ul#ulMenuNav li:eq(4) a").addClass('navActive');
        } else { 
            $("ul#ulMenuNav li a").removeClass('navActive');
        };

    });
那么:

$(document).ready(function () {         
  var current_page = document.location.href;

  $('ul#ulMenuNav li a').removeClass('navActive');
  $('ul#ulMenuNav li a[href*="'+current_page+'"]').addClass('navActive');

});
您可以尝试以下方法:


尝试在服务器上的chrome调试器中检查
当前页面
,以查看其设置。我认为这就是你的问题所在。如果可能的话,最好在服务器端这样做。
var url = document.location.href;
var str = url.substr(0, url.lastIndexOf('/'));
var nUrl = str.substr(str.lastIndexOf('/')+1);

$('ul#ulMenuNav li a:contains('+nUrl+')').addClass('active');