移动端上拉加载更多(Pull-to-Load More 或 Infinite Scroll)是一种常见的用户界面设计模式,允许用户在滚动到页面底部时自动加载更多内容,从而提升用户体验和减少页面加载次数。
以下是一个基于滚动事件的简单示例:
// HTML结构
<div id="content">
<!-- 内容列表 -->
</div>
<div id="loading" style="display:none;">加载中...</div>
// JavaScript代码
let loading = false;
const contentDiv = document.getElementById('content');
const loadingDiv = document.getElementById('loading');
window.addEventListener('scroll', function() {
if (loading) return;
if (window.innerHeight + window.scrollY >= document.body.offsetHeight - 50) {
loadMoreContent();
}
});
function loadMoreContent() {
loading = true;
loadingDiv.style.display = 'block';
// 模拟异步加载数据
setTimeout(() => {
for (let i = 0; i < 10; i++) {
const newItem = document.createElement('div');
newItem.textContent = `内容项 ${contentDiv.children.length + 1}`;
contentDiv.appendChild(newItem);
}
loading = false;
loadingDiv.style.display = 'none';
}, 1000);
}
// 初始加载一些内容
loadMoreContent();
loading
),确保在数据加载完成前不会触发新的加载请求。通过上述方法,可以有效实现移动端的上拉加载更多功能,并解决常见的实现问题。
没有搜到相关的文章