web-dev-qa-db-ja.com

スライドショーがajaxによるポストコールに表示されない

これは私が同じページでajax投稿を呼び出すために使用するコードです。それはうまく機能しますが、投稿がロードされたときに投稿内のスライドショー(短いコードで追加)が表示されません....

ajaxの呼び出し

  jQuery('#menu-profilo > li > a').click(function(event){

            //This keeps the href from reloading the page
            event.preventDefault();

            //grab the page link

            var page = jQuery(this).attr('href');

            jQuery('#slideshow').html ('<div id="loading"><p>loading</p></div>')
            //use the grabbed link in the load function
            .load(page+' .post_content').fadeIn(2000)


          });

これがajaxのポストロードです。

https://www.dropbox.com/jp/za0jwx7sdm2z6zx/post.jpg

ポストロードは通常(ajax呼び出しなし)は正常に機能します。

問題はjqueryプラグインのroyalslider(または他のプラグインでも同じです)が機能していないようです。

こちらFirebug画像: https://www.dropbox.com/s/iui14sxqm4xwa1d/post2.jpg

空白はロイヤルスライダーセクションです....

これを修正する方法はありますか。私は私が投稿とjqueryプラグインを表示するためにajax呼び出しで投稿をロードすると意味します...

1
user13401

通常の静的投稿を含むページをロードすると、スライダーをインスタンス化するためにページロード時に呼び出されるJavaScriptがいくつかあります。何かのようなもの:

jQuery(document).ready(function($){
    $('.sliders').someSliderScript();
});

これにより、スライダーを適用する必要があるすべての要素が検出され、それを設定して機能させるために必要なすべてのコードが実行されます。

AJAXを介してコンテンツをロードすると、そのコードはすでに実行されており、新しくロードされたコンテンツにスライダを自動的に適用することはありません。 AJAXコンテンツがページに追加された後は、そのコンテンツに対するJavaScriptの操作をもう一度呼び出す必要があります。

1
Milo