jQuery AJAX 是一种在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页的技术。无限加载(Infinite Scrolling)是一种用户体验设计模式,当用户滚动到页面底部时,自动加载更多内容。
以下是一个基于滚动事件的无限加载示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Infinite Scroll Example</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
<div id="content">
<!-- 初始内容 -->
</div>
<div id="loading" style="display:none;">Loading...</div>
<script>
var page = 1;
var loading = false;
function loadMoreContent() {
if (loading) return;
loading = true;
$('#loading').show();
$.ajax({
url: 'https://api.example.com/data',
method: 'GET',
data: { page: page },
success: function(data) {
$('#content').append(data);
page++;
loading = false;
$('#loading').hide();
},
error: function() {
loading = false;
$('#loading').text('Failed to load more content');
}
});
}
$(window).scroll(function() {
if ($(window).scrollTop() + $(window).height() >= $(document).height() - 100) {
loadMoreContent();
}
});
// 初始加载
loadMoreContent();
</script>
</body>
</html>
loading
)来防止重复加载。通过以上方法,可以有效解决 jQuery AJAX 无限加载过程中遇到的问题。
没有搜到相关的文章