javascript - 如果初始文档小于窗口大小,则自动滚动
问题描述
当用户滚动到页面底部时,我正在使用 jQuery 和 javascript 从我的服务器动态加载数据:
$(window).scroll(function(){
var scrollTop = $(document).scrollTop();
var windowHeight = $(window).height();
var bodyHeight = $(document).height() - windowHeight;
var scrollPercentage = (scrollTop / bodyHeight);
if(scrollPercentage == 1) {
// Load content
}
}
});
唯一的问题是,如果视口的高度足够大,那么初始文档高度会小于视口的高度。然后,用户将无法滚动,我的代码将无法正常工作。处理这个问题的最佳方法是什么?如果文档的高度超过视口的高度,我考虑反复检查 javascript,并继续加载内容,直到它超过视口的高度:
while ($(document).height() == $(window).height()) {
if (working == false) {
working = true;
getData();
}
}
这个working
变量是我在获取数据时设置为 true 的变量。然后,在 ajax 回调中,我有一个超时,它在 1 秒内变为 false。getData 函数从我的服务器获取数据。但是,页面似乎只是卡在了这个 while 循环上。(它不加载)
解决方案
推荐阅读
- c++ - 不使用 new 关键字创建类时的错误
- reactjs - 参考或状态重复或 HOC?
- java - bubble.io DB 和 Java 库集成
- sql-server - 小写 select 的结果并在另一个 select 语句中查找它
- mysql - MySQL Docker 容器中止 - [错误] [MY-011087]
- java - Java .print 被扫描仪跟随时挂起
- javascript - HTML & CSS - 隐藏由散列和字母数字组成的字符串的前面部分
- ms-access-2016 - 如何在 ms-access 中创建库存输入表单?
- google-bigquery - 将我的项目链接到我的结算帐户后无法更新表过期
- python - 组织和导入文件