使用jquery设置和删除菜单背景颜色

时间:2013-08-05 14:55:25

标签: jquery

如何在此jsfiddle默认为蓝色的情况下制作主页链接的背景颜色,但是当点击其他链接时,它不再是蓝色的?

我尝试使用windows.onload但蓝色背景仍然存在。

HTML

<div id="menu">
    <ul>
        <li><a href="#">Home</a></li>           
        <li><a href="#">Link2</a></li>
        <li><a href="#">Link3</a></li>
    </ul>
</div>

的jQuery

$(document).ready(function(){
    var $targetElement = $("#menu a");
    $targetElement.click(function() {
       $targetElement.removeClass("currentlink");
       $(this).addClass("currentlink");
    });
});

http://jsfiddle.net/KR4ed/

2 个答案:

答案 0 :(得分:2)

从html的开头设置类,如下所示

<li><a href="#" class="currentlink">Home</a></li>   

<强> demo

答案 1 :(得分:0)

试试这个:

$(document).ready(function () {
    var setId = $.cookie("currentId");
    if (typeof setId !== "undefined") {
        $("#menu a").removeClass("currentlink");
        $('#' + setId).addClass("currentlink"); // currentlink set using cookie
    }
    var $targetElement = $("#menu a");
    $targetElement.click(function () {
        $targetElement.removeClass("currentlink");
        $(this).addClass("currentlink");
        var lastID = $(this).attr("id");
        $.cookie('currentId', lastID);
    });
});  

JSFIDDLE DEMO

注意:您必须添加 jquery.cookie.min.js ,然后添加以上代码。请参阅jsfiddle演示以供参考。