Jquery flexslider不';不能在ajax放大弹出窗口中工作

Jquery flexslider不';不能在ajax放大弹出窗口中工作,jquery,ajax,wordpress,flexslider,magnific-popup,Jquery,Ajax,Wordpress,Flexslider,Magnific Popup,我试图在放大弹出窗口中加载flexslider,但由于某些原因,弹出窗口中的脚本无法工作 使用wordpress函数加载放大弹出窗口wp\u enqueue\u script(): 然后,通过单击按钮,弹出窗口将打开此文件: <div class="container"> <div class="popup-container"> <?php // Loop start if( have_posts() ): while

我试图在放大弹出窗口中加载flexslider,但由于某些原因,弹出窗口中的脚本无法工作

使用wordpress函数加载放大弹出窗口
wp\u enqueue\u script()

然后,通过单击按钮,弹出窗口将打开此文件:

<div class="container">

  <div class="popup-container">

    <?php
    // Loop start
    if( have_posts() ):

      while( have_posts() ) : the_post();

        get_template_part( 'agency', 'popup' );

      endwhile;

    else :

      echo "no agencies found";

    endif;
    ?>



  </div><!--.popup-container-->

</div> <!--.container -->

在agency-popup.php内部:

<div class="flexslider">
  <ul class="slides">
    <li>
      <img src="slide1.jpg" />
    </li>
    <li>
      <img src="slide2.jpg" />
    </li>
    <li>
      <img src="slide3.jpg" />
    </li>
    <li>
      <img src="slide4.jpg" />
    </li>
  </ul>
</div>

<script>

 jQuery(document).ready(function($) {   
    $(window).load(function() {
           $('.flexslider').flexslider({
              animation: "slide"
          });
     });
  });

</script>

jQuery(文档).ready(函数($){ $(窗口)。加载(函数(){ $('.flexslider').flexslider({ 动画:“幻灯片” }); }); });
但是jquery不会加载。。我尝试将它添加到按钮所在的页面中,以及
部分中,在这两种情况下,它都不起作用。
注意:我已经用
wp\u enqueue\u script()
加载了flexslider,并检查了它是否已进入队列,确实如此。

您应该在弹出窗口后启用flexslider:

$('.ajax-popup-link').magnificPopup({
    type:'ajax',
    midClick: true,
    overflowY: "scroll",
    alignTop: false,
    callbacks: {
        open: function() {
            $('.mfp-content .flexslider').flexslider({
                animation: "slide"
            });
        }
    }
});

说明:通过AJAX插入脚本不会运行它。但是,按照规定,如果您使用jQuery
dataType:html
,则会对其进行评估。

对于任何可能处理此线程的人,我可以通过使用以下回调来解决此问题:

callbacks: {            
    ajaxContentAdded: function() {
            $('#carousel').flexslider({
                animation: 'slide',
                direction: 'vertical',
                controlNav: false,
                animationLoop: true,
                slideshow: false,
                itemWidth: 143,
                itemMargin: 2,
                asNavFor: '#slider'
            });
            $('#slider').flexslider({
                animation: 'slide',
                controlNav: false,
                animationLoop: false,
                slideshow: false,
                sync: '#carousel'
            });
        }
}

通过AJAX插入脚本不会运行它-因此,在弹出窗口启动后,您需要启用flexslider。另一个解决方案是提出一个iframe。那么我应该把它放在哪里?检查in文档。尝试进行fowlloing,但仍然不起作用:。非常感谢您的帮助m8..因此我需要在
magnificpoop
函数中使用
dataType:html
,并将脚本插入原始文件中(就像我第一次做的那样,没有回调)
dataType
用于jQuery
ajax
方法,真的不知道magnificpoop在这种情况下使用什么,必须检查源代码。
callbacks: {            
    ajaxContentAdded: function() {
            $('#carousel').flexslider({
                animation: 'slide',
                direction: 'vertical',
                controlNav: false,
                animationLoop: true,
                slideshow: false,
                itemWidth: 143,
                itemMargin: 2,
                asNavFor: '#slider'
            });
            $('#slider').flexslider({
                animation: 'slide',
                controlNav: false,
                animationLoop: false,
                slideshow: false,
                sync: '#carousel'
            });
        }
}