准备:
json文件(模拟数据)
html(有滚动条)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<style>
*{ padding: 0; margin: 0;}
ul{
width: 80%;
margin: 0 auto;
overflow: hidden;
}
li{
list-style: none;
width: 50%;
float: left;
padding: 10px;
box-sizing: border-box;
}
li img{ width: 100%;}
</style>
</head>
<body>
<div style="width: 100%; height: 400px; background: #0177A7;"></div>
<ul>
<li><img src="img/g1.jpg" alt=""><p>11111111111</p></li>
<li><img src="img/g1.jpg" alt=""><p>11111111111</p></li>
<li><img src="img/g1.jpg" alt=""><p>11111111111</p></li>
<li><img src="img/g1.jpg" alt=""><p>11111111111</p></li>
<li><img src="img/g1.jpg" alt=""><p>11111111111</p></li>
<li><img src="img/g1.jpg" alt=""><p>11111111111</p></li>
<li><img src="img/g1.jpg" alt=""><p>11111111111</p></li>
<li><img src="img/g1.jpg" alt=""><p>11111111111</p></li>
</ul>
<button id="more">..................</button>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript">
var load = false;//判断是否加载成功 可以加载
var indexNum = 0, allLen;//当前加载json页数,json长度
$(window).scroll(function(){
if(load) return; //不能加载
var dh = $("body").height();
var wh = window.screen.height ;
//console.log(dh-wh-30,$(this).scrollTop())
if( $(this).scrollTop() >= dh-wh-30){
console.log("aa")
load = true;
var param = '';//加载html变量
$.post("js/json.js",function(data){
console.log(data)
allLen = data.length;//获取json长度
var data1 = data[indexNum];
var dlen = data1.length;
for(var j=0;j<dlen;j++){
$("ul").append($('<li><img src="'+data1[j].img+'" alt=""><p>'+data1[j].text+'</p></li>'))
}
indexNum++;
load = false;
if(indexNum>=allLen){
load = true;
$("#more").html("没有更多数据");
}else{
$("#more").html("向下拉加载更多");
}
},"json");
}
});
</script>
</body>
</html>