滑轮滚动到页面底部ajax加载数据配合json实现
2015-05-20 15:04
639 查看
滚动下拉到页面底部加载数据是很多瀑布流网站的做法,那来看看配合jsonp是如何实现的吧,小菜总结记录之用,高手勿喷。
当然本例子采用的是jquery库,后期会做成原生js。
本例的数据调用的是锋利的jquery一书提供的一段json。
首先要先判断页面怎么样才是滚动到底部,也就是scrollTop+window的height是否大于document的height,jquery如下代码: $(window).scrollTop()+$(window).height()>=$(document).height();
再给window绑定scroll事件。所以整个页面demo可以这样做:
拉到底部就是实现异步数据加载了,当然了,实际项目还要加上如果没数据了要怎么显示,怎么操作。这些加判断就行了。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
* { margin:0; padding:0;}
body { font-size:12px;}
p{ margin: 5px;}
.box{ padding: 10px;}
</style>
<!-- 引入jQuery -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
$(window).bind('scroll',function(){show()});
function show()
{
if($(window).scrollTop()+$(window).height()>=$(document).height())
{
ajaxRead();
}
}
function ajaxRead()
{
var html="";
$.ajax({
type:'get',
dataType:'jsonp',
url:'http://api.flickr.com/services/feeds/photos_public.gne?tags=car&tagmode=any&format=json&jsoncallback=?',
beforeSend:function(){console.log('loading...')},
success:function(data){
$.each(data.items,function(i,item){
html+='<div class="box">';
html+='<h1>'+item.title+'</h1>';
html+='<a hreft="'+item.link+'"><img src="'+item.media.m+'"/></a>'
html+='<div>'+item.tags+'</div>';
html+='</div>';
});
$("#resText").append($(html));
},
complete:function(){console.log('mission acomplete.')}
});
}
})
</script>
</head>
<body>
往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉
<div id="resText" >
</div>
</body>
</html>
当然本例子采用的是jquery库,后期会做成原生js。
本例的数据调用的是锋利的jquery一书提供的一段json。
首先要先判断页面怎么样才是滚动到底部,也就是scrollTop+window的height是否大于document的height,jquery如下代码: $(window).scrollTop()+$(window).height()>=$(document).height();
再给window绑定scroll事件。所以整个页面demo可以这样做:
拉到底部就是实现异步数据加载了,当然了,实际项目还要加上如果没数据了要怎么显示,怎么操作。这些加判断就行了。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
* { margin:0; padding:0;}
body { font-size:12px;}
p{ margin: 5px;}
.box{ padding: 10px;}
</style>
<!-- 引入jQuery -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
$(window).bind('scroll',function(){show()});
function show()
{
if($(window).scrollTop()+$(window).height()>=$(document).height())
{
ajaxRead();
}
}
function ajaxRead()
{
var html="";
$.ajax({
type:'get',
dataType:'jsonp',
url:'http://api.flickr.com/services/feeds/photos_public.gne?tags=car&tagmode=any&format=json&jsoncallback=?',
beforeSend:function(){console.log('loading...')},
success:function(data){
$.each(data.items,function(i,item){
html+='<div class="box">';
html+='<h1>'+item.title+'</h1>';
html+='<a hreft="'+item.link+'"><img src="'+item.media.m+'"/></a>'
html+='<div>'+item.tags+'</div>';
html+='</div>';
});
$("#resText").append($(html));
},
complete:function(){console.log('mission acomplete.')}
});
}
})
</script>
</head>
<body>
往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉 往下拉
<div id="resText" >
</div>
</body>
</html>
相关文章推荐
- 滑轮滚动到页面底部ajax加载数据配合jsonp实现探讨
- 滑轮滚动到页面底部ajax加载数据配合jsonp实现探讨
- 滑轮滚动到页面底部ajax加载数据的实例
- 滑轮滚动到页面底部ajax加载数据的实例
- js 下拉底部加载|滑轮滚动到页面底部ajax加载数据的实例
- 做了MVC模式一年,可不要把传统模式忘记呀!ashx配合aspx实现AJAX加载JSON数据
- js加载Json数组实现ajax加载动态页面数据
- jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
- thinkphp+ajax 移动端实现滚动到底部加载数据(无刷新动态加载数据技术的应用)
- 动态的把数据显示在table中,点击某一行的删除按钮实现该行的删除(通过ajax实现页面的无刷新加载)
- 移动端滚动加载数据判断是否滚动到页面底部
- js实现滚动条滚动到页面底部继续加载
- Flask: Ajax 设置Access-Control-Allow-Origin实现跨域访问;Ajax页面底部自动加载
- jquery实现滚动到页面底部时无限加载内容的代码
- 动态的把数据显示在table中,点击某一行的删除按钮实现该行的删除(通过ajax实现页面的无刷新加载)
- Flask: Ajax 设置Access-Control-Allow-Origin实现跨域访问;Ajax页面底部自动加载
- 使用jquery实现页面滚动到底部自动加载新的信息
- 使用jquery实现页面滚动到底部自动加载新的信息
- 使用jquery实现页面滚动到底部自动加载新的信息
- 使用jquery实现页面滚动到底部自动加载新的信息