在JavaScript中实现列表加载动画,通常涉及以下几个基础概念:
Promise
、async/await
)来处理数据加载,确保动画在数据加载期间显示。以下是一个简单的示例,展示如何在JavaScript中实现列表加载动画:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>List Loading Animation</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div id="list-container">
<div id="loading" class="loading">Loading...</div>
</div>
<button id="load-more">Load More</button>
<script src="script.js"></script>
</body>
</html>
.loading {
text-align: center;
font-size: 20px;
color: #888;
}
.list-item {
padding: 10px;
border-bottom: 1px solid #ccc;
}
document.getElementById('load-more').addEventListener('click', async () => {
const loading = document.getElementById('loading');
loading.style.display = 'block'; // Show loading animation
// Simulate an API call with setTimeout
await new Promise(resolve => setTimeout(resolve, 2000));
// Clear loading animation
loading.style.display = 'none';
// Add new items to the list
const listContainer = document.getElementById('list-container');
for (let i = 0; i < 5; i++) {
const item = document.createElement('div');
item.className = 'list-item';
item.textContent = `Item ${listContainer.children.length + 1}`;
listContainer.appendChild(item);
}
});
div
和一个按钮来触发加载更多数据。setTimeout
),然后隐藏加载动画并添加新的列表项。通过这种方式,可以在数据加载期间显示一个简单的加载动画,提升用户体验。
领取专属 10元无门槛券
手把手带您无忧上云