全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

JS轮播图实现简单代码

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

思路:

1、首先要有个盛放图片的容器,设置为单幅图片的宽高,且overflow:hidden,这样保证每次可以只显示一个图片
2、Container内有个放图片的list进行position的定位 ,其中的图片采用float的方式,同时当图片进行轮播时,改变list的Left值使得其显示的图片发生变化。
3、图片的轮播使用定时器,通过定时器改变list的Left值是的图片循环展示
4、当鼠标滑动到图片上时,清除定时器,图片停止轮播,当鼠标移出时继续进行轮播
5、图片上有一组小圆点用于与当前显示的图片相对应,同时可以通过点击的方式查看对应的图片
6、图片可以通过点击进行左右滑动显示

代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>轮播图</title>
 <style type="text/css">
 .container{
 margin:0 auto;
 width:600px;
 height:400px;
 position: relative;
 overflow: hidden;
 border:4px solid gray;
 box-shadow: 3px 3px 5px gray;
 border-radius:10px;
 }
 .list{
 width:4200px;
 height:400px;
 position: absolute;
 top:0px;
 }
 img{
 float:left;
 width:600px;
 height:400px;
 }
 .dots{
 position: absolute;
 left:40%;
 bottom:30px;
 list-style: none;
 }
 .dots li{
 float:left;
 width:8px;
 height:8px;
 border-radius: 50%;
 background: gray;
 margin-left:5px
 }
 .dots .active{
 background: white;
 }
 .pre,.next{
 position: absolute;
 top:40%;
 font-size:40px;
 color:white;
 text-align:center;
 background: rgba(128,128,128,0.5);
 /* display:none;*/
 }
 .pre{
 left:30px;
 }
 .next{
 right:30px;
 }
 </style>
</head>
<body>
 <div class="container">
 <div class="list" style=" left:-600px;">
 <img src="img/5.jpg">
 <img src="img/1.jpg">
 <img src="img/2.jpg">
 <img src="img/3.jpg">
 <img src="img/4.jpg">
 <img src="img/5.jpg">
 <img src="img/1.jpg">
 </div>
 <ul class="dots">
 <li index=1 class="active dot"></li>
 <li index=2 class="dot"></li>
 <li index=3 class="dot"></li>
 <li index=4 class="dot"></li>
 <li index=5 class="dot"></li>
 </ul>
 <div class="pre"><</div>
 <div class="next">></div>
 </div>
<script type="text/javascript">
 var index=1,timer;
 function init(){
 eventBind();
 autoPlay();
 }
 init();
 function autoPlay(){
 timer =setInterval(function () {
 animation(-600);
 dotIndex(true);
 },1000)
 }
 function stopAutoPlay() {
 clearInterval(timer);
 }
 function dotIndex(add){
 if(add){
 index++;
 }
 else{
 index--;
 }
 if(index>5){
 index = 1;
 }
 if(index<1){
 index = 5;
 }
 dotActive();
 }
 function dotActive() {
 var dots = document.getElementsByClassName("dot");
 var len = dots.length;
 for(var i=0 ;i<len ;i++){
 dots[i].className = "dot";
 }

 for(var i=0;i<len;i++){
 /*此处可以不用parseInt,当不用全等时*/
 if(index === parseInt(dots[i].getAttribute("index"))){
 dots[i].className = "dot active";
 }
 }
 }
 function eventBind(){
 /*点的点击事件*/
 var dots = document.getElementsByClassName("dot");
 var len = dots.length;
 for(var i=0;i<len;i++){
 (function(j){
 dots[j].onclick = function(e){
 var ind = parseInt(dots[j].getAttribute("index"));
 animation((index - ind)*(-600));/*显示点击的图片*/
 index = ind;
 dotActive();
 }
 })(i)
 }
 /*容器的hover事件*/
 var con = document.getElementsByClassName("container")[0];
 /*鼠标移动到容器上时,停止制动滑动,离开时继续滚动*/
 con.onmouseover = function (e) {
 stopAutoPlay();
 }
 con.onmouseout =function(e){
 autoPlay();
 }
 /*箭头事件的绑定*/
 var pre = document.getElementsByClassName("pre")[0];
 var next = document.getElementsByClassName("next")[0];
 pre.onclick = function (e) {
 dotIndex(false);
 animation(600);
 }
 next.onclick = function (e) {
 dotIndex(true);
 animation(-600);
 }
 }
 function animation(offset){
 var lists = document.getElementsByClassName("list")[0];
 var left = parseInt(lists.style.left.slice(0,lists.style.left.indexOf("p"))) + offset;
 if(left<-3000){
 lists.style.left = "-600px";
 }
 else if(left>-600){
 lists.style.left = "-3000px";
 }
 else{
 lists.style.left = left+"px";
 }
 }

</script>
</body>
</html>

精彩专题分享:jQuery图片轮播 JavaScript图片轮播 Bootstrap图片轮播

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


# js  # 轮播图  # 原生js实现轮播图的示例代码  # js实现轮播图的完整代码  # JS实现轮播图效果的3种简单方法  # 原生JS实现的自动轮播图功能详解  # 简单的JS轮播图代码  # 使用JavaScript实现轮播图效果完整实例  # 可以通过  # 上时  # 当鼠标  # 有个  # 鼠标  # 要有  # 上有  # 只显示  # 设置为  # 大家分享  # 绑定  # 具体内容  # 相对应  # 大家多多  # 移出  # 全等  # 小圆点  # style  # container  # css 


相关文章: 北京网站制作公司哪家好一点,北京租房网站有哪些?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  c# 在高并发下使用反射发射(Reflection.Emit)的性能  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  深圳网站制作平台,深圳市做网站好的公司有哪些?  宝塔新建站点为何无法访问?如何排查?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  制作网站公司那家好,网络公司是做什么的?  平台云上自助建站如何快速打造专业网站?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  如何快速辨别茅台真假?关键步骤解析  Swift中swift中的switch 语句  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  独立制作一个网站多少钱,建立网站需要花多少钱?  如何在Windows虚拟主机上快速搭建网站?  如何做静态网页,sublimetext3.0制作静态网页?  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  如何快速打造个性化非模板自助建站?  广州建站公司哪家好?十大优质服务商推荐  南平网站制作公司,2025年南平市事业单位报名时间?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  如何在宝塔面板中修改默认建站目录?  如何在IIS服务器上快速部署高效网站?  江苏网站制作公司有哪些,江苏书法考级官方网站?  c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】  中山网站制作网页,中山新生登记系统登记流程?  如何选择可靠的免备案建站服务器?  如何快速生成可下载的建站源码工具?  西安大型网站制作公司,西安招聘网站最好的是哪个?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  模具网站制作流程,如何找模具客户?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  ,网站推广常用方法?  网站制作模板下载什么软件,ppt模板免费下载网站?  如何实现建站之星域名转发设置?  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  代刷网站制作软件,别人代刷火车票靠谱吗?  如何快速生成橙子建站落地页链接?  如何通过云梦建站系统实现SEO快速优化?  制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?  建站主机是什么?如何选择适合的建站主机?  安云自助建站系统如何快速提升SEO排名?  如何快速搭建高效简练网站?  宁波自助建站系统如何快速打造专业企业网站?  北京的网站制作公司有哪些,哪个视频网站最好?  如何高效搭建专业期货交易平台网站?  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  七夕网站制作视频,七夕大促活动怎么报名? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。