Javascript 以前使用jQuery的div在Ajax调用后不起作用

Javascript 以前使用jQuery的div在Ajax调用后不起作用,javascript,jquery,ajax,slider,Javascript,Jquery,Ajax,Slider,我有两个脚本: 第一个是图像转盘。它使用jQuery滑动条 第二个是Ajax脚本,它在页面向下滚动时加载内容 这是我的密码: function slider () { var $arrows = $('.arrows'); var $next = $arrows.children(".slick-next"); var $prev = $arrows.children(".slick-prev"); var slick = $('.your-class').slick(

我有两个脚本:

  • 第一个是图像转盘。它使用jQuery滑动条
  • 第二个是Ajax脚本,它在页面向下滚动时加载内容 这是我的密码:

    function slider () {
      var $arrows = $('.arrows');
      var $next = $arrows.children(".slick-next");    
      var $prev = $arrows.children(".slick-prev");
    
      var slick = $('.your-class').slick({
        appendArrows: $arrows
      });
    
      $('.slick-next').on('click', function (e) {
        var i = $next.index( this )
        slick.eq(i).slickNext();
      });
    
      $('.slick-prev').on('click', function (e) {
        var i = $prev.index( this )
        slick.eq(i).slickPrev();
      });
    }
    
    $(document).ajaxComplete(slider);
    
    以下是使用Ajax加载的滚动内容:

    $(document).ready(function(){
    
      function slider () {
    
        var $arrows = $('.arrows');
        var $next = $arrows.children(".slick-next");    
        var $prev = $arrows.children(".slick-prev");
    
        var slick = $('.your-class').slick({
          appendArrows: $arrows
        });
    
        $('.slick-next').on('click', function (e) {
          var i = $next.index( this )
          slick.eq(i).slickNext();
        });
    
        $('.slick-prev').on('click', function (e) {
          var i = $prev.index( this )
          slick.eq(i).slickPrev();
        });
      }
    
      $(document).ajaxComplete(slider);
    
      var flag = 0;
    
      $.ajax({
        type: "GET",
        url: "getdata.php",
        data: {
          'offset': 0,
          'limit': 10
        },
    
        success: function(data){
          $('.rowmasonry').append(data);
          flag += 10;
        },
    
      });
    
      $(window).scroll(function(){
        if($(window).scrollTop() >= $(document).height() - $(window).height()-500){
          $.ajax({
            type: "GET",
            url: "getdata.php",
            data: {
              'offset': flag,
              'limit': 10
            },
    
            success: function(data){
              $('.rowmasonry').append(data);
              flag += 10;
            },
    
          });
        }
    
      });
    
    });
    
    问题是前10个加载的内容工作正常。但是,当我向下滚动时,又出现了10个内容,加载的前10个内容没有响应

    如何将图像滑块绑定到Ajax,以便页面上的所有内容都可以使用jQuery


    谢谢你的帮助

    您只是将新元素添加到DOM中。为了更新slick,您需要重新安装slick carousel,或者如果您确定幻灯片标记,则可以使用插件提供的
    slickAdd
    方法

    $.ajax().done(函数(数据){
    $('.your class').slick('slickAdd',data);
    });


    ref:

    取决于插件api…如果他们有添加内容的方法,请使用该方法,或者您可能需要在ajax成功中再次初始化插件。你的具体问题没有很好地解释谢谢你的回答。我已经在滚动部分下添加了如下代码。但它仍然不起作用。完成:函数(数据){$('.your class').slick('slickAdd',data);