模拟QQ空间,滑动滚动条,自动加载数据。《模板》

最近需要做一个QQ空间滑动滚动条,自动加载数据的功能。  功能其实挺简单,使用异步加载数据的方式,当滑动滚动条,将后台数据添加到页面。。
这里有3个麻烦的地方:
1 scroll函数是比较敏感的。只要你稍微移动一下滚动条就出发事件了。。现实给人的感觉就是你点击一下滚动条就触发时间。让人很讨厌。。这里借鉴了一位朋友的思路
http://www.css88.com/archives/4646。  它的思路就是加以个定时器来解决。

2 由于你新增数据的时候滚动条是会滑动的,它也会自动触发scroll事件。   这里解决方案就是:加一个开关 isFinish..让没一次触发时间完成之后,再恢复触发功能。

3 关于像QQ空间那种,自动加载数据后,滚动条停留在原始刚刚滑动的位置。   。  这个看了网上很多朋友的计算方法。。最后我发觉,其实当页面新加载数据之后,滚动条会自动偏移到我们需要的位置。。所以大笑, 这个问题不存在。。


<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="jquery-1.8.3.js" type="text/javascript"></script>


   <script type="text/javascript">
$(document).ready(function(){
var isFinish = true
$(window).scroll(function(){
if(!isFinish){
return;
}
isFinish = false;
setTimeout(function(){
var scrollTop = $(window).scrollTop();
addContent(scrollTop);
isFinish = true;
},1000);
});
});


function addContent(srollPos){
var main = $("#try");
    main.append("<div style='height:"+500+"' >hello world"+srollPos+"---"+0+"</div>");
    var mainHiht = main.height();
}
</script>
</head>
<body>
    <div id="try">
        <div id="follow" style="height:960px">this is a scroll test;<br/>    页面下拉自动加载内容</div>
    </div>
</body>

</html>


这里我将经验贴出来跟大家共享一下。如果哪位朋友有更好的方案请指点,交流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值