我有这方面的问题,它在活动时无法保持风格。如何基于URL
将活动类添加到导航菜单<div class="admin_nav">
<ul>
<li><a href="admin.php">main</a></li>
<li><a href="?do=add_menu">manu</a></li>
<li><a href="?do=add_news">news</a></li>
<li><a href="#">123</a></li>
<li><a href="#">123</a></li>
<li><a href="#">123</a></li>
<li><a href="#">123</a></li>
</ul>
</div>
$(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");
})
});
关于这个的任何解决方案????
答案 0 :(得分:0)
您的代码适用于完全以/admin.php
,/?do=add_news
和/#
E.g。对于网址http://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");