Jquery在锚点列表上单击事件

时间:2014-05-25 17:13:22

标签: javascript jquery html css

我已经创建了锚点列表。点击链接,我想在我点击的链接中添加CSS类(使用addClass)。

<ul id = "menu">
        <li id="mnuLectures" runat="server">
            <asp:HyperLink NavigateUrl = "~/Lectures.aspx" Text="Lectures" runat = "server" ID= "hypLectures" />
        </li>
        <li id="mnuBooks" runat="server">
            <asp:HyperLink NavigateUrl = "~/Books.aspx" Text="Books" runat = "server" ID= "hypBooks" />
        </li>
        <li id="mnuArticles" runat="server">
            <asp:HyperLink NavigateUrl = "~/Articles.aspx" Text="Articles" runat = "server" ID= "hypArticles" />
        </li>
        <li id="mnuQA" runat="server">
            <asp:HyperLink NavigateUrl = "~/QuestionAnswers.aspx" Text="Q & A" runat = "server" ID= "hypQA" />
        </li>
    </ul>

和JQuery,

$(document).ready(function () {
    $('#menu li a').click(function () {

        $(this).addClass('highlight');

    });
});

jquery代码无法正常工作。我无法将CSS类添加到单击的锚点。 我错过了什么或方法是错误的......请建议

2 个答案:

答案 0 :(得分:1)

在申请加入之前,你必须从第一个被选中的人中删除:

$(document).ready(function () {

    $('#menu li a').click(function (event) {

        $('#menu li a').removeClass('highlight');
        $(this).addClass('highlight');

        event.preventDefault(); // stop default event to stop reloading of page

    });

});

答案 1 :(得分:0)

您需要将event.preventDefault()添加到click事件中。试试这个:

http://jsfiddle.net/xec4a/

$('#menu li a').click(function (e) {
    e.preventDefault();    
    $(this).addClass('highlight');
    alert('class added');
});