如何基于URL将活动类添加到导航菜单

我有这方面的问题,它在活动时无法保持风格。 如何基于URL将活动类添加到导航菜单

 $(function() { var pgurl = window.location.href.substr(window.location.href.lastIndexOf("/")+1); $(".admin_nav ul li a").each(function(){ if($(this).attr("href") == pgurl || $(this).attr("href") == '' ) $(this).addClass("newclass"); }) }); 

关于这个的任何解决方案?

您的代码适用于以/admin.php /?do=add_news/#结尾的页面

例如,对于urlhttp://example.com/?do=add_news它会起作用,但对于http://example.com/foobar.html?do=add_news ,它将无效(因为前面的foobar ?do=add_news )。

如果您只担心URL的最后部分是否包含 href字段的文本,您可以将if语句更改为:

 if($(this).attr("href") == '' || pgurl.indexOf($(this).attr("href")) > -1) $(this).addClass("newclass");