2

ユーザーがスライド間の遅延と、画像にリンクが含まれているかどうかを設定できる特別なシステムを使用しています。スライドショーに mootools を使用していましたが、nivoSlider に更新したいと考えています。

PHP スクリプトは、古いシステム要件に従って以下をエクスポートします

var data = {
'0225201274127_1.jpg': {delay:4000},
'0225201274417_4.jpg': {delay:3000},
'0225201274624_9.jpg': {delay:5000},
'0225201274607_8.jpg': {delay:3000},
'0225201274456_6.jpg': {delay:6000},
'0225201274521_7.jpg': {delay:7000},
'0225201274435_5.jpg': {delay:3000},
'0225201274338_2.jpg': {delay:2000},
'0225201274647_10.jpg': {delay:1000},
'0225201274359_3.jpg': {delay:6000},
'0225201274707_11.jpg': {delay:4000}
};

上記の遅延をスライドショーの個々の画像に設定する方法を探しているだけです。

必要に応じて、出力を再構成できます。私たちは一日中さまざまな方法を試してきましたが、成功しませんでした.

4

1 に答える 1

2

「afterLoad」で配列を使用していますが、うまく機能します。

  var delays = [4000,3000,5000,3000]; //your delay array

    function pageLoad() {
        $(function () {
            $('#slider').nivoSlider({
                pauseTime: 50000,
                directionNav: true,
                afterChange: function () { setDelay() },
                afterLoad: function () { setDelay() },
                controlNav: true,
                pauseOnHover: false
            });
        });
    }

    function setDelay() {
        var currentSlide = $('#slider').data("nivo:vars").currentSlide;
        setTimeout(function () {
            $('#slider').find('a.nivo-nextNav').click()
        }, delays[currentSlide]);

    }

お役に立てれば。HTML の残りの部分は、標準的な nivo レイアウトです。

于 2012-12-27T21:32:24.253 に答える