我是jquery的新手。我确实阅读了一些针对li的方法,但没有得到如何在li里面定位href来改变所选菜单的类。代码如下:
<ul class="cssmenu">
<li class="home">
<a href="#" class="selected" title="Home">
<span class="displace">
</span>
</a>
</li>
<li class="blog">
<a href="#" title="Blog">
<span class="displace">
</span>
</a>
</li>
<li class="contact">
<a href="#" title="Contact">
<span class="displace">
</span>
</a>
</li>
</ul>
我正在使用的脚本是
$("ul").on("click", "li", function()
{
var $this = $(this);
$this.addClass("selected")
.prependTo($this.parent())
.siblings().removeClass("selected");
});
答案 0 :(得分:2)
由于您将click事件绑定到列表项,因此您需要首先使用find()从列表项中的所有子锚中删除该类,然后将所选类添加到列表的特定锚子项中(或锚点)你点击了。
$("ul").on("click", "li", function () {
$(this).siblings().find('a').removeClass("selected");
$('a',this).addClass("selected");
});
<强> jsFiddle example 强>