ajax请求数据动态渲染信息流(每隔两条数据插入一个div或者一条信息)

 1  var page = 0;
 2     var lock = true;
 3     $(window).scroll(function() {
 4         //获取#gg这个div到顶部的距离
 5         var mTop = $('#gg')[0].offsetTop;
 6         //获取窗口的高度
 7         var sTop = $(window).scrollTop();
 8         //获取滚动时#gg这个div距离顶部的距离
 9         var result = mTop - sTop;
10         // console.log(result);
11         if (result < 867 && lock === true) {
12             page += 1;
13             lock = false;
14             //判断page的页码数
15             if (page <= 3) {
16                 var data = {
17                     page: page,
18                     limit: 10,
19                     type_id: 0,
20                 }
21                 $.ajax({
22                     type: "get",
23                     url: 'url请求地址' + page(页数) + '&limit&typeid',
24                     data: data,
25                     dataType: "json",
26                     success: function(data) {
27                         data = data.data
28                             // console.log(data);
29                         var str = '';
30                         $.each(data, function(index, val) {
31                             if ((index + 1) % 2 === 0) { //判断数据插入的位置
32                                 //全局的空数组----GG---这个是存放数另一个接口请求数来的数据
33                                 $.each(GG, function(i, item) {
34                                     //循环渲染GG里面的数据
35                                     str += '<li class="hyli">' +
36                                         '<div class="picbox">' +
37                                         '<a target="_blank" href="' + item.curl + '">' +
38                                         '<img src="' + item.img + '" alt="' + item.title + '">' +
39                                         '</a>' +
40                                         '</div>' +
41                                         '<div class="info">' +
42                                         ' <a target="_blank" href="' + item.curl + '">' +
43                                         '<span class="title">' + item.title + '</span>' +
44                                         '</div>' +
45                                         '<p>' + item.desc + '</p>' +
46                                         '</a>' +
47                                         '</div>' +
48                                         '</li>'
49                                 })
50                             }
51                             //循环渲染data里面的数据
52                             str += '<li class="hyli">' +
53                                 '<div class="picbox">' +
54                                 '<a target="_blank" href="' + val.url + '">' +
55                                 '<img src="' + val.litpic + '" alt="' + val.title + '">' +
56                                 '</a>' +
57                                 '</div>' +
58                                 '<div class="info">' +
59                                 ' <a target="_blank" href="' + val.url + '">' +
60                                 '<span class="title">' + val.title + '</span>' +
61                                 '<div class="date">于' + val.pubdate + '发表' +
62                                 '<span>知识</span>' +
63                                 '</div>' +
64                                 '<p>' + val.description + '</p>' +
65                                 '</a>' +
66                                 '</div>' +
67                                 '</li>'
68                         });
69                         $('.yc_ul').append(str); //全部放进.yc_ul里面
70                         lock = true;
71                     }
72                 });
73             } else {
74                 //当page大于3时就解结束请求
75                 return false
76             };
77             fun1() //调用另一个js文件里的方法
78 
79         }
80 
81     })
原文地址:https://www.cnblogs.com/520yh/p/13518708.html