2017-10-13 19 views
0

ここで、Ajaxによってデータが変更されるページがあります。id = "Products"ただし、ここではスライダが正しく動作しません。データが変更されたときスライダが機能しない。Owl SliderがAJAXのレスポンス後に機能しない

コンソールでは、このエラーが発生しています。 Uncaught TypeError:$(...)。owlCarouselは関数ではありません

また、私はスライダーのCSSとjsをAjaxファイルに入れようとしました。しかし、まだ動作していません。 も多くのSOの質問に見えましたが、完璧な解決策は見つかりませんでした。 AJAX呼び出しのsuccess:機能で

<div id="products"> 
     <div class="owl-carousel color-options"> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/1.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/2.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/3.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/4.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/5.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/1.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/2.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/3.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/4.png"></a></div> 
      <div><a href="javascript:void(0);" data-full="image/2.png"><img src="image/5.png"></a></div> 
     </div> 
    </div> 
</div> 


<script> 
$('.color-options').owlCarousel({ 
     loop:true, 
     margin:10, 
     nav:true, 
     items:4, 
    }) 
</script> 

答えて

0

、あなたはフクロウスライダーを再初期化する必要があります。

success: function() { 

    //Add success code here 

    $('.color-options').owlCarousel({ 
     loop:true, 
     margin:10, 
     nav:true, 
     items:4 
    }) 
} 

これにより、Owl Sliderは変更されたデータからスライダを再生成します。

+0

をあなたのカルーセルを破壊し、再初期化してみてください。$(...)owlCarouselは関数ではありません。 –

+0

コンテンツが動的である場合、owlSliderは混乱しているようです。実行時にスライダdomを(ajaxではなく)動的に変更し、owlSliderを初期化しようとしてください。私の意見では、この問題はAJAXとは関係がありません。 – nipunasudha

0

同様の質問on stackoverflow hereおよびhere。 カルーセルプラグイン(jsファイル)を読み込んでいますか? jquery libの直後にスクリプトの先頭に移動してみてください。

<!-- Include js plugin --> 
<script src="assets/owl-carousel/owl.carousel.js"></script> 
<script> 
$('.color-options').owlCarousel({ 
    loop:true, 
    margin:10, 
    nav:true, 
    items:4, 
}) 
</script> 

....キャッチされない例外TypeErrorこれは同じエラーを返しますあなたの成功の機能に

owl = $('.color-options'); 

owl.data('owlCarousel').destroy(); 
    owl.owlCarousel({ 
    loop:true, 
    margin:10, 
    nav:true, 
    items:4, 
    }); 
+0

はすでにすべてのjsとcssが必要です。しかし、データがAJAXによって変更されたときに直面する問題。 @sunny Chidi –

関連する問題