0

スライダーを自動再生するこのコードがありますが、最後のスライドで停止します。最後のスライドの後、最初から開始するにはどうすればよいですか。ありがとうございました

ナビゲーションに次のボタンを使用するスライダーがあります。これに自動再生機能を追加するにはどうすればよいですか-SetTimeout関数?

ありがとう

// Next Clicked jQuery('.ajax-next').click(function(){

        if ( jQuery(".ajax-portfolio-window").is(':animated') || jQuery(".ajax-portfolio-image-wrap").is(':animated') ) return;

        var total = jQuery('.portfolio-ajax').length;
        var index = jQuery('.ajax-gallery-navigation').attr("id");

        currindex=parseInt(index);
        nextIndex=currindex+1;
        if (nextIndex!=total) {
            jQuery('.portfolio-ajax').eq(nextIndex).trigger('click');
        }

        return false;


    });



    // Clicked Prev 

    jQuery('.ajax-prev').click(function(){

        if ( jQuery(".ajax-portfolio-window").is(':animated') || jQuery(".ajax-portfolio-image-wrap").is(':animated') ) return;

        var index = jQuery('.ajax-gallery-navigation').attr("id");
        if (index=='-1') { index='0'; }
        currindex=parseInt(index);
        prevIndex=currindex-1;
        if (prevIndex!=-1) {
            jQuery('.portfolio-ajax').eq(prevIndex).trigger('click');
        }

        return false;
    }); 
}

// Autoplay

setInterval(function(){
        // do you stuff here. for example
        jQuery('.ajax-next').click();
            }, 10000); // 10 sec interval
4

1 に答える 1

1

私はあなたのHTMLマークアップについてはよく知りませんが、コードを単純化することができますnext()prev()

とにかく、スライダーをループするには、合計に達した場合はインデックスを 0 に設定する必要があります。そう:

    if (nextIndex!=total) {
        jQuery('.portfolio-ajax').eq(nextIndex).trigger('click');
    }

次のように変更する必要があります。

    if (nextIndex == total - 1) {
        nextIndex = 0
    }
    jQuery('.portfolio-ajax').eq(nextIndex).trigger('click');
于 2012-07-06T05:30:52.770 に答える