我正在使用此脚本突出显示当前链接(添加活动类):
<script type="text/javascript">
jQuery(document).ready(function( $ ) {
$(function() {
$('nav a[href^="/' + location.pathname.split("/")[1] + '"]').addClass('active');
});
});
</script>
<li><a href="/category/english/this/?s=<?php
echo '' . htmlspecialchars($_GET["s"]) . '';
?>/">this</a></li>
<li><a href="/category/english/that/?s=<?php
echo '' . htmlspecialchars($_GET["s"]) . '';
?>/">that</a></li>
这首先匹配/
,例如/category
,然后突出显示菜单中的所有内容或以/category/...
开头的任何链接。我希望所有内容都与第三级1/2/3/whatever
匹配,因此,例如,如果我使用的网址是/category/english/that/?s=what is this
,则希望突出显示包含/category/english/that/
的链接。
答案 0 :(得分:0)
可能您不需要拆分location.pathname
。试试
let pathname = '/category/english/this';
$(function() {
$('ul a[href^="' + pathname + '"]').addClass('active');
});
.active {
color: red
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
<li><a href="/category/english/this/?s=text">this</a></li>
<li><a href="/category/english/that/?s=text2/">that</a></li>
</ul>