要在按钮点击时显示进度条直到广告被加载,并在广告加载完成后隐藏进度条并显示广告,可以使用JavaScript和CSS来实现这一功能。以下是一个简单的示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>广告加载示例</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div id="ad-container">
<button id="load-ad-btn">加载广告</button>
<div id="progress-bar" class="hidden"></div>
<div id="ad" class="hidden">
<!-- 广告内容将在这里显示 -->
<img src="path_to_ad_image.jpg" alt="广告图片">
</div>
</div>
<script src="script.js"></script>
</body>
</html>
/* styles.css */
.hidden {
display: none;
}
#progress-bar {
width: 100%;
height: 20px;
background-color: #ddd;
}
#progress-bar::before {
content: '';
display: block;
height: 100%;
width: 0;
background-color: #4caf50;
transition: width 0.5s ease;
}
// script.js
document.getElementById('load-ad-btn').addEventListener('click', function() {
var progressBar = document.getElementById('progress-bar');
var ad = document.getElementById('ad');
// 显示进度条
progressBar.classList.remove('hidden');
// 模拟广告加载过程(实际应用中应替换为真实的广告加载逻辑)
setTimeout(function() {
// 更新进度条
progressBar.style.setProperty('--progress', '100%');
// 隐藏进度条并显示广告
setTimeout(function() {
progressBar.classList.add('hidden');
ad.classList.remove('hidden');
}, 500); // 等待进度条动画完成
}, 2000); // 模拟2秒的广告加载时间
});
::before
来显示加载进度。setTimeout
模拟广告加载过程(实际应用中应替换为真实的广告加载逻辑)。setTimeout
模拟逻辑。通过这种方式,可以实现一个简单的广告加载进度条,提升用户交互体验。
领取专属 10元无门槛券
手把手带您无忧上云