2

これについての私の論理を完全に突き止めることはできません.長い一日でした. 基本的に、一定時間それぞれにクラスを追加し、毎回クラスをクリアするという繰り返しで実行する必要がある画像のリストがあります。

だから〜だ:

クラスを追加し、タイムアウトし、クラスを削除し、次を繰り返し、最後の場合は最初に移動します

ここに私が持っているものがありますが、まったく機能していません:

ul.find('.frame').each(function(){

    var thiis = $(this);

    thiis.addClass('showing');

    setTimeout(function(){
        thiis.removeClass('showing');
    }, 1000);
});
4

2 に答える 2

2
var $f = $('ul').find('.frame');

function recursive(i) {
    $f.removeClass('showing').eq(i).addClass('showing');
    setTimeout(function () {
        recursive(++i % $f.length)
    }, 1000);
}
recursive(0);

http://jsfiddle.net/Wja4r/

于 2013-03-18T04:12:01.093 に答える
1

私はあなたが望むと思いますsetInterval- あなたがそれをクリアするまで繰り返されます.

var $items = $('.frame'),
    delay = 1000;
    $items.first().addClass('showing');

setInterval(function(){
  var $current = $items.filter('.showing'),
      $next = $current.next().length ? $current.next() : $items.first();

  $current.removeClass('showing');
  $next.addClass('showing');
}, delay);

デモ: http://jsfiddle.net/PELjq/2/

于 2013-03-18T04:06:18.377 に答える