2012-03-14 188 views
0

我在Jquery中創建了這段代碼。添加刪除類Jquery

而且它工作正常,但我試圖做到這一點:我不想在這個例子中INSTEAD我會努力完成以下加個班就(在文件負載),如:

ON FIRST click click FIRST li tag and THEN add class「active」。我想要達到像Fiddle一樣的功能。 (唯一不同的是,我不想第一個li標籤立即有CLASS,但要添加一個CLASS按鈕點擊。)有人可以幫我嗎?謝謝!!

$(document).ready(function() { 
    $('ul li:first').addClass('active'); 
    $("button").click(function() { 
     $('.active').removeClass('active').next('li').addClass('active') 

    }); 
}); 

回答

2
$(document).ready(function() { 

    $("button").click(function() { 
     if($('ul li.active').length==0) 
      $('ul li:first-child').addClass('active'); 
     else 
     $('.active').removeClass('active').next('li').addClass('active') 

    }); 
}); 

嘗試此處http://jsfiddle.net/KVLE6/2/

在您需要檢查是否存在與活動類的任何項目的話。如果至少有一個,則刪除它並將其添加到下一個。如果沒有,請將其添加到第一個。讓我知道這是你想要的

+1

這是它!非常非常感謝你!!你是男人!謝謝!!! – 2012-03-14 14:04:19

1
$("button").click(function() { 
    var $active= $('.active'); 
    if(!$active.length){ 
     $('ul li:first').addClass('active'); 
    }else{ 
     $active.removeClass('active').next('li').addClass('active'); 
    } 
}); 
0

$(document).ready(function() { 
    //$('ul li:first').addClass('active'); 
    $("button").click(function() { 
     if($('li.active').length > 0) { 

      $('.active').removeClass('active').next('li').addClass('active'); 
     }else{ 
      console.log($('ul li:first')); 
      $('ul li:first').addClass('active'); 
     } 

    }); 

}); 

小提琴

$(document).ready(function() { 
var i=0 
$("button").click(function() { 

    if(i > $("ul > li").length) 
    { 
     i=0;  
    } 
    $("ul > li").siblings().removeClass('active');    
    $("ul > li:eq("+i+")").removeClass('active').addClass('active'); 
    i++; 
}); 
}); 

小提琴例如:http://jsfiddle.net/KVLE6/25/