如何循环脚本

时间:2015-10-01 12:28:26

标签: jquery loops checkbox slider

我正在尝试创建脚本,它就像一步一步的滑块一样,点击一段时间。主要目标是使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 个答案:

答案 0 :(得分: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);

编辑(回答后续问题):

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');
    });
});