我有这个HTML代码,我想在活动链接中包含的div中添加一个“active”类。 (我故意使用无序列表创建此导航。)
<nav role="navigation" id="navigation">
<a href="rings-c-24.html" title="Rings"><div class="primary-navigation">Rings</div></a>
<a href="earrings-c-23.html" title="Earrings"><div class="primary-navigation">Earrings</div></a>
<a href="necklaces-c-26.html" title="Necklaces"><div class="primary-navigation">Necklaces</div></a>
<a href="bracelets-and-bangles-c-22.html" title="Bracelets & Bangles"><div class="primary-navigation">Bracelets & Bangles</div></a>
</nav><!-- end of navigation-->
我尝试过这样的事情,但我确信我没有正确地引用我的父母和孩子。请帮忙,谢谢!
$(function(){
var current = location.pathname;
$('.primary-navigation').each(function(){
var $this = $(this).parent();
// if the current path is like this link, make it active
if($this.attr('href').indexOf(current) !== -1){
$this.addClass('active');
}
})
})
答案 0 :(得分:1)
您可以使用属性选择器:
$("#navigation a[href='"+location.pathname+"']").find(".primary-navigation").addClass("active");
或者,如果您要将该类添加到<a>
标记:
$("#navigation a[href='"+location.pathname+"']").addClass("active");
答案 1 :(得分:0)
试试这个
$(function() {
var pgurl = window.location.href.substr(window.location.href
.lastIndexOf("/")+1);
$("#navigation a").each(function(){
if($(this).attr("href") == pgurl || $(this).attr("href") == '' )
$(this).find(".primary-navigation").addClass("active");
})
});