滚动后如何加载ajax?

时间:2017-04-04 07:47:05

标签: javascript jquery html css ajax

我有多个ajax页面,我想在滚动后加载我的ajax页面我该怎么办?我有一个简单的基本结构,我想在无限滚动或懒惰图像滚动后加载我的ajax。



$('.lazy_content').on('load', function (e) {

            data_url = $(this).attr("data-url");
            data_id = $(this).attr("data-target-id");

            $.ajax({
                url: data_url,
                type: "POST",
                beforeSend: function () {
                    $(".loaderDiv").show();
                    $("#" + data_id).html("");
                },
                success: function (data) {
                     $(data).each(function(index, el) {
	                    $(".loaderDiv").hide();
	                    $("#" + data_id).html(data);
               		});
                }

            })

        });

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="lazy_content" data-url="/ajax/comments/aurum-didyma-spa-beach-resort" data-target-id="comments-content">
  <h4>COMMENTS</h4>
  <div id="comments-content" class="content-target"></div>
</div>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:0)

只需在元素(div)上添加事件滚动:

 $('.lazy_content').scroll(function() {
      data_url = $(this).attr("data-url");
      data_id = $(this).attr("data-target-id");

      $.ajax({
           url: data_url,
           type: "POST",
           beforeSend: function () {
                $(".loaderDiv").show();
                $("#" + data_id).html("");
           },
           success: function (data) {
                $(data).each(function(index, el) {
                     $(".loaderDiv").hide();
                     $("#" + data_id).html(data);
                });
           }
      })
 });

答案 1 :(得分:0)

为此目的,您有一个本机JS事件:

    onscroll="myFunction"