如何使用jquery更改li中的href类?

时间:2013-04-02 14:48:08

标签: jquery html-lists href

我是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");
});

1 个答案:

答案 0 :(得分:2)

由于您将click事件绑定到列表项,因此您需要首先使用find()从列表项中的所有子锚中删除该类,然后将所选类添加到列表的特定锚子项中(或锚点)你点击了。

 $("ul").on("click", "li", function () {
     $(this).siblings().find('a').removeClass("selected");
     $('a',this).addClass("selected");
 });

<强> jsFiddle example