尝试将类添加到包含窗口位置的最后部分的链接的父级,以便进一步设置样式。
基本的html看起来像这样
<li>
<a href="whatever">Some link</a>
<ul>
<li class="subnavli">
<a href="somelink.com/somethinginthemiddle/lastpart">Link Text</a>
</li>
</ul>
</li>
和我试图使用的js / jquery是
function getLastSegmentOfPath(url) {
var matches = url.match(/\/([^\/]+)\/?$/);
if (matches) {
return matches[1];
}
return null;
}
var endPath = getLastSegmentOfPath(window.location.href);
$(".subnavli a").each(function(){
if ($(this).attr('href').contains(endPath)) {
$(this).parent().parent().parent().addClass('active5');
}
});
你可能猜到,它不起作用。
答案 0 :(得分:0)
包含()是个问题。现在应该工作。 contains()函数是另外的东西:http://api.jquery.com/jquery.contains/而且,还有包含选择器,但这是另一个故事......
function getLastSegmentOfPath(url) {
var matches = url.match(/\/([^\/]+)\/?$/);
if (matches) {
return matches[1];
}
return null;
}
endPath = getLastSegmentOfPath(window.location.href);
console.log(endPath);
$(".subnavli a").each(function(){
if ($(this).attr('href').indexOf(endPath)) {
$(this).parent().parent().prev('a').addClass('active5');
}
});
});