JavaScript 样式 banner 滚动代码通常用于创建一个自动滚动的横幅广告或图片轮播效果。以下是一个简单的示例,包括 HTML、CSS 和 JavaScript 代码,用于实现一个基本的水平滚动 banner。
<div class="banner-container">
<div class="banner-track" id="bannerTrack">
<div class="banner-item"><img src="image1.jpg" alt="Image 1"></div>
<div class="banner-item"><img src="image2.jpg" alt="Image 2"></div>
<div class="banner-item"><img src="image3.jpg" alt="Image 3"></div>
</div>
</div>
.banner-container {
width: 100%;
overflow: hidden;
position: relative;
}
.banner-track {
display: flex;
animation: scroll 15s linear infinite;
}
.banner-item {
min-width: 100%;
box-sizing: border-box;
}
.banner-item img {
width: 100%;
display: block;
}
@keyframes scroll {
0% { transform: translateX(0); }
100% { transform: translateX(-100%); }
}
document.addEventListener('DOMContentLoaded', function() {
const track = document.getElementById('bannerTrack');
const items = track.children;
let totalItems = items.length;
// 复制第一项到最后,实现无缝滚动
const firstItem = items[0].cloneNode(true);
track.appendChild(firstItem);
// 调整动画时间以适应项目数量
const itemWidth = items[0].offsetWidth;
const duration = (totalItems + 1) * (15 / totalItems); // 假设每个项目展示时间为15秒
track.style.animationDuration = `${duration}s`;
});
will-change
属性可以提高动画性能。will-change
属性可以提高动画性能。overflow: hidden;
和 position: relative;
。通过以上代码和解释,你应该能够创建一个基本的滚动 banner,并理解其背后的原理和可能的解决方案。
领取专属 10元无门槛券
手把手带您无忧上云