jquery removeClass在Internet Explorer 6中无法正常工作

时间:2011-02-07 07:56:15

标签: jquery

我有以下导航,

    <ul class="content-nav">
         <li id="nav-liv" class="tab"><a href="index.php?p=recent" page="recent">Recent</a></li>
         <li id="nav-liv"><a href="index.php?p=friends" page="friends">Friends</a></li>
         <li id="nav-liv"><a href="index.php?p=following" page="following">Following</a></li>
         <li id="nav-liv"><a href="index.php?p=my" page="my">My</a></li>
         <li id="nav-liv"><a href="index.php?p=fav" page="fav">Favourite</a></li>
    <ul>

使用jquery代码

    $(".content-nav li#nav-liv a").click(function(){
           $("li#nav-liv").removeClass("tab");
           $(this).parent().addClass("tab");
        return false;
});

这非常适用于除了6之外的所有浏览器。 在ie 6中,当我点击朋友链接时,它从最近的链接中删除了tab类,但是在点击其他链接之后它就不会删除类。

2 个答案:

答案 0 :(得分:3)

好吧,你的所有li都有ID #nav-liv,我猜IE6正在窒息。我要做的第一件事就是将它们更改为类,看看IE6是否还有问题。

答案 1 :(得分:1)

ID应该是唯一的。

   <ul class="content-nav">
         <li class="nav-liv tab"><a href="index.php?p=recent" page="recent">Recent</a></li>
         <li class="nav-liv"><a href="index.php?p=friends" page="friends">Friends</a></li>
         <li class="nav-liv"><a href="index.php?p=following" page="following">Following</a></li>
         <li class="nav-liv"><a href="index.php?p=my" page="my">My</a></li>
         <li class="nav-liv"><a href="index.php?p=fav" page="fav">Favourite</a></li>
    <ul>

$(".content-nav li.nav-liv a").click(function(){
       $("li.nav-liv").removeClass("tab");
       $(this).parent().addClass("tab");
    return false;
});