【发布时间】:2012-09-19 23:07:03
【问题描述】:
对此有几个 SO 解决方案,但我没有任何运气让它们工作。 JQuery 初学者尝试通过一个解决方案在简单的导航菜单中将“活动”类添加到活动列表项:
<div id="main-menu">
<ul>
<li><a href="/site/about">About Us</a></li>
<li><a href="/site/work">Our Work</a></li>
<li><a href="/site/contact">Contact Us</a></li>
</ul>
</div>
以前的 SO 帖子表明这有效,但到目前为止我还没有成功。我在 wordpress 中使用了漂亮的永久链接,所以任何页面的完整路径如下:
http://www.foobar.com/site/about/
这是我目前的工作:
<script>
$(function(){
var url = window.location.pathname,
urlRegExp = new RegExp(url.replace(/\/$/,''));
$('#main-menu li').each(function(){
if(urlRegExp.test(this.href)){
$(this).addClass('active');
}
});
});
</script>
我尝试了几种解决方案,包括更改我编写 href 的方式等。我真正模糊的代码部分是 urlRegExp 部分......有什么帮助吗?
【问题讨论】:
-
您正试图在
<li>中找到href。 -
为什么不使用 Wordpress 在
<body>上设置的课程中提供的功能,就像我之前在 SO 上所做的回答 stackoverflow.com/a/12272075/600101 一样? symbios 中没有 JS,只有 WP 和 CSS。拯救世界一些树木。 :)
标签: javascript jquery html css