以下代码的功能是将类添加到当前页面上单击的链接中,并且两者都可以工作。
$("li a").filter(function(){ return this.href == location.href.replace(/#.*/, ""); }).parents('nav ul li').addClass("selected");
和
var loc = window.location.href;
$("a").each(function() {
if(this.href == loc) {
$(this).parents('nav ul li').addClass('selected');
}
});
但我的问题是,你只能在导航中添加类链接。单击div之外的任何链接都不会添加任何类。请看一下这个网址,然后点击导航1或2之外的链接。
- 你推荐我用哪一个
- 当我点击导航区外的任何链接时,如何使用jquery将默认类设置为第一个li(视频)
我的目标是将类添加到父类李,并且它是李选择的子类。
请帮我一下。非常感谢。
它不会添加类,因为您试图将导航项href与它不匹配的url进行匹配。
你可以随时添加第二部分,以确保选择了
var loc = window.location.href;
$("nav a").each(function() {
if(this.href == loc) {
$(this).parents('li').addClass('selected');
}
});
$("nav").each( function(){
var $nav = $(this);
if ($nav.find('li.selected').length == 0 ){
$nav.first('.li').addClass('selected');
}
})