我已经为此苦苦挣扎了一个小时,但我无法解决它。我刚开始在 javascript 上使用 this
,但这真的很简单,而且无法正常工作。
这是 HTML
<ul class="nav pull-right nav-tabs" id="primarynav">
<li class=" navlink">
<a href="#">About</a>
</li>
<li class="navlink active">
<a href="#">Portfolio</a>
</li>
<li class="navlink">
<a href="#">Contact</a>
</li>
</ul>
和js
$(document).ready(function(){
$(".navlink").click(function(){
$(".navlink").removeClass("active");
this.addClass("active");
});
});
所以它应该从所有类navlink
的元素中移除类active
,然后添加类active
到单击的元素。但事实并非如此。
最佳答案
将其更改为:
$(this).addClass("active");
.addClass()
是一个 jQuery 方法,您一直在尝试将它应用于非 jQuery 对象(this
vs $(this)
)。
关于javascript - "this"未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15418221/