使用jQuery删除并添加属性id

时间:2014-05-01 04:35:42

标签: jquery

我的网站上有菜单,我希望使用基于不同页面的jQuery删除和添加属性ID。

我的代码:

<ul id="nav">
    <li id="current"><a href="">Users</a></li>
    <li><a href="Category.aspx">Category</a></li>
    <li><a href="SubCategory.aspx">SubCategory</a></li>
    <li><a href="Area.aspx">Area</a></li>
    <li><a href="Feedbacks.aspx">Feedbacks</a></li>
</ul>

此处,在主页上,id'current'设置为first li。现在,当用户访问Category时,我想从Users中删除id current并将id设置为Category。

怎么做?

6 个答案:

答案 0 :(得分:2)

尝试

$(document).ready(function () {
    $('li#current').removeAttr("id"); //remove previously added id
    var loc = $(location).attr('href'); //get current location
    $('#nav a').filter(function () { //filter a tag 
        return this.href == loc;//whose link is pointing to current location
    }).parent().attr('id', 'current'); //add id to parent li
});

答案 1 :(得分:0)

$('li').click(function(e) {
        e.preventDefault();
        $('li').removeAttr('id');
        $(this).attr('id','current');
    });

Demo

答案 2 :(得分:0)

试试这个:

//$('#nav li').each(function(){
    $('#current').removeAttr('id');
    $('li:active').attr('id','current');
//}

答案 3 :(得分:0)

$('#nav li').click(function() {
        $('li#current').removeAttr("id");
        $(this).attr('id' , 'current');
});

答案 4 :(得分:0)

使用此,

$('#nav li').click(function(){
  $('#current').removeAttr('id');
  $(this).attr('id','current');
}

答案 5 :(得分:0)

switch(window.location.pathname) {
    case 'Category.aspx':
        $("#nav").find('#current').attr('id','');
        $('#nav').find('a[href="Category.aspx"]').attr('id', 'current');
    break;
    case 'SubCategory.aspx':
        $("#nav").find('#current').attr('id','');
        $('#nav').find('a[href="SubCategory.aspx"]').attr('id', 'current');
    break;
    case 'Area.aspx':
        $("#nav").find('#current').attr('id','');
        $('#nav').find('a[href="Area.aspx"]').attr('id', 'current');
    break;
    case 'Feedbacks.aspx':
        $("#nav").find('#current').attr('id','');
        $('#nav').find('a[href="Feedbacks.aspx"]').attr('id', 'current');
    break;

}