如何用JavaScript编写一个动态轮播图功能?

更新于
2026-09-26 21:05:38
2阅读来源:SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计667个文字,预计阅读时间需要3分钟。

如何用JavaScript编写一个动态轮播图功能?

本例展示如何使用JavaScript实现轮播图功能,包括代码示例和原理介绍。

1. 代码示例:

2. 原理介绍:

- `div` 标签用于创建轮播图的容器。- `id=swiper-container` 为轮播图容器设置ID,方便后续JavaScript操作。- `class=swiper-container` 为轮播图容器添加CSS样式,使其具备轮播图样式。- `onmouseenter=swiperImg()` 设置鼠标悬停时触发`swiperImg()`函数,实现轮播图自动播放。- `onmouseleave=stopSwiper()` 设置鼠标离开时触发`stopSwiper()`函数,停止轮播图播放。

注意:以上代码仅供参考,实际应用时需要根据具体需求进行修改和完善。

本文实例为大家分享了JS实现轮播图展示的具体代码,供大家参考,具体内容如下

原理介绍

1.html

<div id="swiper-container" class="swiper-container" onmouseenter="swiperImg()" onmouseleave="stopSwiper()"> <div id="img-list" style="left:0px;"> <img src="img/swiper1.png" alt="1"> <img src="img/swiper2.png" alt="2"> <img src="img/swiper1.png" alt="1"> <img src="img/swiper2.png" alt="2"> </div> <div id="swiper-btn"> <span index="1" class="on"></span> <span index="2"></span> </div> </div>

布局很简单,利用一个class="swiper-container"的div,包裹图片列表,swiper-btn是按钮

2. css

* { margin: 0; padding: 0; } a { text-decoration: none; } .swiper-container { position: relative; width: 300px; height: 300px; margin: 0 auto; border: 1px solid; overflow: hidden; } #img-list { position: absolute; width: 1200px; height: 300px; } #img-list img { float: left; } #swiper-btn { position: absolute; bottom: 5%; left: 45%; } #swiper-btn span { display: inline-block; width: 10px; height: 10px; border-radius: 5px; } .on { background-color: goldenrod; } span { background-color: #d7d7d7; }

3.js

var timer; var div = document.getElementById('img-list'); var span = document.getElementById('swiper-btn').getElementsByTagName('span'); var offset = -300; var index = 1; function swiperImg() { timer = setInterval(() => { var left = parseInt(div.style.left); var newLeft = left + offset; if (newLeft <= -1200) { div.style.left = '0px'; } else { div.style.left = newLeft + 'px'; } showBtn(parseInt(div.style.left)); }, 3000); } function showBtn(left) { if (left == 0 || left == -600) { span[0].className = "on"; span[1].className = ""; } else { span[0].className = ""; span[1].className = "on"; } } function stopSwiper() { clearInterval(timer); } for (var i = 0; i < span.length; i++) { span[i].onclick = function () { if (this.className == "on") { return false; } var myIndex = parseInt(this.getAttribute("index")); if (myIndex == 1) div.style.left = 0 + 'px'; if (myIndex == 2) div.style.left = -300 + 'px'; index = myIndex; showButton(); } } function showButton() { for (var i = 0; i < span.length; i++) { //全部取消掉on样式 if (span[i].className == "on") { span[i].className = ""; break; } } span[index - 1].className = "on"; }

效果如下所示:

如何用JavaScript编写一个动态轮播图功能?

更多关于轮播图效果的专题,请点击下方链接查看学习

javascript图片轮播效果汇总

jquery图片轮播效果汇总

Bootstrap轮播特效汇总

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

本文共计667个文字,预计阅读时间需要3分钟。

如何用JavaScript编写一个动态轮播图功能?

本例展示如何使用JavaScript实现轮播图功能,包括代码示例和原理介绍。

1. 代码示例:

2. 原理介绍:

- `div` 标签用于创建轮播图的容器。- `id=swiper-container` 为轮播图容器设置ID,方便后续JavaScript操作。- `class=swiper-container` 为轮播图容器添加CSS样式,使其具备轮播图样式。- `onmouseenter=swiperImg()` 设置鼠标悬停时触发`swiperImg()`函数,实现轮播图自动播放。- `onmouseleave=stopSwiper()` 设置鼠标离开时触发`stopSwiper()`函数,停止轮播图播放。

注意:以上代码仅供参考,实际应用时需要根据具体需求进行修改和完善。

本文实例为大家分享了JS实现轮播图展示的具体代码,供大家参考,具体内容如下

原理介绍

1.html

<div id="swiper-container" class="swiper-container" onmouseenter="swiperImg()" onmouseleave="stopSwiper()"> <div id="img-list" style="left:0px;"> <img src="img/swiper1.png" alt="1"> <img src="img/swiper2.png" alt="2"> <img src="img/swiper1.png" alt="1"> <img src="img/swiper2.png" alt="2"> </div> <div id="swiper-btn"> <span index="1" class="on"></span> <span index="2"></span> </div> </div>

布局很简单,利用一个class="swiper-container"的div,包裹图片列表,swiper-btn是按钮

2. css

* { margin: 0; padding: 0; } a { text-decoration: none; } .swiper-container { position: relative; width: 300px; height: 300px; margin: 0 auto; border: 1px solid; overflow: hidden; } #img-list { position: absolute; width: 1200px; height: 300px; } #img-list img { float: left; } #swiper-btn { position: absolute; bottom: 5%; left: 45%; } #swiper-btn span { display: inline-block; width: 10px; height: 10px; border-radius: 5px; } .on { background-color: goldenrod; } span { background-color: #d7d7d7; }

3.js

var timer; var div = document.getElementById('img-list'); var span = document.getElementById('swiper-btn').getElementsByTagName('span'); var offset = -300; var index = 1; function swiperImg() { timer = setInterval(() => { var left = parseInt(div.style.left); var newLeft = left + offset; if (newLeft <= -1200) { div.style.left = '0px'; } else { div.style.left = newLeft + 'px'; } showBtn(parseInt(div.style.left)); }, 3000); } function showBtn(left) { if (left == 0 || left == -600) { span[0].className = "on"; span[1].className = ""; } else { span[0].className = ""; span[1].className = "on"; } } function stopSwiper() { clearInterval(timer); } for (var i = 0; i < span.length; i++) { span[i].onclick = function () { if (this.className == "on") { return false; } var myIndex = parseInt(this.getAttribute("index")); if (myIndex == 1) div.style.left = 0 + 'px'; if (myIndex == 2) div.style.left = -300 + 'px'; index = myIndex; showButton(); } } function showButton() { for (var i = 0; i < span.length; i++) { //全部取消掉on样式 if (span[i].className == "on") { span[i].className = ""; break; } } span[index - 1].className = "on"; }

效果如下所示:

如何用JavaScript编写一个动态轮播图功能?

更多关于轮播图效果的专题,请点击下方链接查看学习

javascript图片轮播效果汇总

jquery图片轮播效果汇总

Bootstrap轮播特效汇总

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。