1、我在用im-chat.html开发一个聊天室应用的时候遇到一个问题,如下:
我的页面首次打开需要加载30条聊天数据(包含图片、文字两种类型),由于我需要以前的聊天数据,所以加载了30条数据。问题是我每次打开页面,聊天数据加载完毕之后,滚动条均不能给滚动到最底部,经过研究确定了问题所在。
2、问题产生原因,官方的im-chat.html页面关于页面滚动是这样写的
ui.areaMsgList.scrollTop = ui.areaMsgList.scrollHeight + ui.areaMsgList.offsetHeight;
这样会导致当加载的数据量大的时候,聊天信息还没有加载完成,就已经计算了滚动条位置。
3、解决办法如下:
setTimeout(function(){
ui.areaMsgList.scrollTop = ui.areaMsgList.scrollHeight +ui.areaMsgList.offsetHeight;
},100);
计算滚动条位置的时候,延迟计算。
最后感谢官方提供的模板。
阿峰
IOS 滚动到底部呢??? 调用 这个 mui('#pullrefresh').pullRefresh().scrollTo(0, xxx); 为什么不能用?????
2015-11-17 13:22