2015-10-01 57 views
0

我正在嘗試製作腳本,該腳本的工作原理與點擊次數一樣的逐步滑塊。主要目標是讓LABEL成爲點擊的觸發點。我編寫了腳本,但是如何使它與循環一起工作:當它到達最後一個LABEL時,它首先進入循環?任何幫助? http://codepen.io/NeedHate/pen/ojBmXM如何循環腳本

$('label').each(function(i, e) { 
    var delay = 1000; 
    setTimeout(function() { 
    $('label').removeClass('button-checked'); 
    $(e).trigger("click").addClass('button-checked'); 

    }, i * delay); 
}); 

回答

1

你可以嘗試

function changeTo(i) { 
    setTimeout(function() { 
     $("label").removeClass('button-checked');  
     $("label:eq(" + i%4 + ")").trigger("click").addClass('button-checked'); 
     changeTo(i+1); 
    }, 1000);  
} 
changeTo(0); 

EDIT(答案後續問題):

var loop = true; 

function changeTo(i) {  
    setTimeout(function() { 
     if (loop) { 
      $("label").removeClass('button-checked');  
      $("label:eq(" + i%4 + ")").trigger("click").addClass('button-checked'); 
      changeTo(i+1); 
     } 
    }, 1000); 
} 
changeTo(0); 

$(function() { 
    $('input[type=radio][name=sec-1]').click(function() { 
     loop = false; 
     $("label").removeClass('button-checked'); 
     $(this).prev("label").addClass('button-checked'); 
    }); 
}); 
+0

完美!感謝名單! 還有一個問題:如果我點擊LABEL如何停止這個腳本? – NeedHate

+0

請參閱已編輯的答案以停止循環。 – alepeino

+0

棒極了!非常感謝你!你幫了我很多!乾杯! ** UPD哦,如果我們不知道標籤有多少元素? ** – NeedHate