1

このライトボックスの ajax 呼び出しの後にスライドショーを起動しようとしていますが、うまくいきません。html インジェクションの前に parseAjax コールバックが起動されたようですが、本当ですか?

ここに私のコードがあります:

     $('.image-link').magnificPopup({
    type:'ajax',
    callbacks: {

        parseAjax: function(jqXHR) {

            var newSlider = $('body')
                .find('.ajaxSlider')
                .royalSlider({
                   // options
                }).data('royalSlider');

        },
        close: function() {

            newSlider.destroy();

        }

    }

 });

<div class="ajaxSlider"></div> // fyo this is ajax content

何か案が?ありがとうございました!

4

1 に答える 1

0

parseAjaxコンテンツが DOM に追加される前にコールバックが発生します。コールバックを使用するupdateStatusか、短いタイムアウトを追加してください。

updateStatus: function(data) {
    if(data.status === 'ready') {
        //
    }
}

また、JS ロジックを ajax ファイル内に配置することもできます。

于 2013-05-27T16:30:46.213 に答える