0

私は問題があります。この jQuery スクリプト (http://musca.se/full-window-width-jquery-tools-content-slider-demo/) を使用してポートフォリオをスライドさせていますが、jQuery のプロではありません。たくさんの検索私は今あなたに尋ねます。前または次を押したときにスライダーのスライドを停止するにはどうすればよいですか?

コードは次のようになります。

$(function() {
        // Sets the slides width on page load
        var i = $(window).width();
        if (i > 319){ $('#items > div').css({ width: i }); }
        // Scrollable and navigator plugin settings.
        $("#slider").scrollable({ circular: true, touch: true, easing: 'easeInQuart', speed: 900}).navigator({ navi: '#navigation' }).autoscroll({ autoplay: true, autopause:false, interval: 2000 });

        // Window resize code
        window.api = $("#slider").data("scrollable");
        $(window).resize(function() {
            var a = window.api.getIndex();
            var w = $(window).width();
            if (w > 319) {
                var l = a * w
                $('#items').css({ left: + - +l });
                $('#items > div').css({ width: w });
            } else {
                $('#items > div').css({ width: 300 });
            }
        });
    });

私のナビゲーションボタンは次のようになります。

<div id="navigation-wrapper">
    <span class="prev lefty"><img src="img/left.png" /></span>
    <span class="next righty"><img src="img/right.png" /></span>
</div>

あなたの助けに本当に感謝します!

4

1 に答える 1

0

タイムアウトを呼び出す前に変数として宣言すると、次のようになります。

var st;

$('.prev').on('click',function(){
    st = setTimeout("$('#slider')", 999999);
});

次のようにクリアできます。

clearTimeout(st);

編集:

前のコードは時代遅れの例に基づいているため、これを試すことができます。

$('#navigation-wrapper').on('click', 'span', function(){
    $('#slider').autoscroll({ autoplay: false, autopause:false, interval: 0 });
}

これにより、autoplay 値が false でスライダーが再初期化されることが期待されます。つまり、スライダー自体の回転が停止します。ただし、私はこのプラグインに詳しくないので、これはせいぜい推測です。それがうまくいくことを願っています。

于 2012-10-11T11:07:59.403 に答える