JavaScript实现轮播图效果代码实例


Posted in Javascript onSeptember 28, 2019

这篇文章主要介绍了JavaScript实现轮播图效果代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

HTML部分:

<!-- HTML部分 -->
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>轮播图</title>
    <link rel="stylesheet" type="text/css" href="css/demo06.css" rel="external nofollow" />
    <script src="js/demo06.js"></script>
  </head>
  <body>
    <div class="container">
      <!-- 轮播图区域 -->
      <ul class="lbimg">
        <li class="on" style="background-color: #898989;">轮播图1</li>
        <li style="background-color: #CD282B;">轮播图2</li>
        <li style="background-color: pink;">轮播图3</li>
        <li style="background-color: peachpuff;">轮播图4</li>
        <li style="background-color: palegoldenrod;">轮播图5</li>
      </ul>  
      <ol class="btn">
        <li class="active">第1张</li>
        <li>第2张</li>
        <li>第3张</li>
        <li>第4张</li>
        <li>第5张</li>
      </ol>
    </div>
  </body>
</html>

CSS部分

*{
  margin: 0;
  padding: 0;
  list-style: none;
}
.container{
  width: 600px;
  height: 400px;
  border: 4px double #FF6633;
  margin: 0 auto;
}

/* 轮播图 */
.lbimg li{
  width: 100%;
  height: 350px;
  text-align: center;
  line-height: 350px;
  display: none;
  font-size: 25px;
  color: #FF6633;
}
.lbimg .on{
  display: block;
}

.btn{
  width: 100%;
  height: 50px;
  background-color: #3CBDFF;
  display: flex;
}
.btn li{
  flex: 1;
  color: #fff;
  font-weight: bold;
  line-height: 50px;
  text-align: center;
  font-family: "楷体";
  cursor: pointer;
  
}
.btn .active{
  background-color: rgba(0,0,0,0.2);
  transition: all ease-in-out 0.25s;
}

JavaScript部分

window.onload=function(){
  var lbimg=document.querySelector(".lbimg");
  var lbimgs=lbimg.querySelectorAll("li");
  var btn=document.querySelector(".btn");
  var btns=btn.querySelectorAll("li");
  
  for (var i = 0; i < btns.length; i++) {
    
    btns[i].index=i;
    btns[i].onclick=function(){
      clearInterval(timer);
      for (var j = 0; j < lbimgs.length; j++) {
        lbimgs[j].className="";
      }
      // 按钮颜色跟着变化
      for(var k=0;k<btns.length;k++){
        btns[k].className="";
      }
      // 轮播同步,点击后图片的位置从点击的地方开始轮播
      index=this.index;
      btns[this.index].className="active";
      lbimgs[this.index].className="on";
      timer=setInterval(autoPlay,1000);
    }
  }
  var index=0;
  // 自动轮播
  index++;
  var timer=setInterval(autoPlay,1000);
  function autoPlay(){
    for (var i = 0; i < lbimgs.length; i++) {
      lbimgs[i].className="";
    }
    for (var j = 0; j < btns.length; j++) {
      btns[j].className="";
    }
    if(index==lbimgs.length-1){
      index=0;
    }else{
      index++;
    }
    btns[index].className="active";
    lbimgs[index].className="on";
  }
  
  // 鼠标移动时清除定时器
  lbimg.onmouseover=function(){
    clearInterval(timer);
  }
  lbimg.onmouseout=function(){
    timer=setInterval(autoPlay,1000);
  }
  
}

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

Javascript 相关文章推荐
Windows Live的@live.com域名注册漏洞 利用代码
Dec 27 Javascript
不用MOUSEMOVE也能滑动啊
May 23 Javascript
javascript基于jQuery的表格悬停变色/恢复,表格点击变色/恢复,点击行选Checkbox
Aug 05 Javascript
jqGrid随窗口大小变化自适应大小的示例代码
Dec 28 Javascript
javascript替换已有元素replaceChild()使用介绍
Apr 03 Javascript
使用jquery解析XML示例代码
Sep 05 Javascript
常用的Javascript数据验证插件
Aug 04 Javascript
浅析JavaScript函数的调用模式
Aug 10 Javascript
JavaScript中最容易混淆的作用域、提升、闭包知识详解(推荐)
Sep 05 Javascript
AngularJS ng-repeat指令及Ajax的应用实例分析
Jul 06 Javascript
js学习总结_选项卡封装(实例讲解)
Jul 13 Javascript
详解如何在微信小程序开发中正确的使用vant ui组件
Sep 13 Javascript
json字符串对象转换代码实例
Sep 28 #Javascript
javascript头像上传代码实例
Sep 28 #Javascript
解决layui laydate 时间控件一闪而过的问题
Sep 28 #Javascript
JavaScript生成随机验证码代码实例
Sep 28 #Javascript
laydate只显示时分 不显示秒的功能实现方法
Sep 28 #Javascript
layui时间控件选择时间范围的实现方法
Sep 28 #Javascript
layui table 表格上添加日期控件的两种方法
Sep 28 #Javascript
You might like
php实现将任意进制数转换成10进制的方法
2015/04/17 PHP
select 控制网页内容隐藏于显示的实现代码
2010/05/25 Javascript
基于JQuery的日期联动实现代码
2011/02/24 Javascript
js+xml生成级联下拉框代码
2012/07/24 Javascript
javascript特殊用法示例介绍
2013/11/29 Javascript
window resize和scroll事件的基本优化思路
2014/04/29 Javascript
js判断当前浏览器类型,判断IE浏览器方法
2014/06/02 Javascript
Javascript检查图片大小不要让大图片撑破页面
2014/11/04 Javascript
nodejs开发微博实例
2015/03/25 NodeJs
原生js的数组除重复简单实例
2016/05/24 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
2017/08/06 Javascript
基于AngularJS拖拽插件ngDraggable.js实现拖拽排序功能
2019/04/02 Javascript
js实现无限层级树形数据结构(创新算法)
2020/02/27 Javascript
微信小程序 wx.getUserInfo引导用户授权问题实例分析
2020/03/09 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
2020/08/03 Javascript
vue.js页面加载执行created,mounted的先后顺序说明
2020/11/07 Javascript
Vue用mixin合并重复代码的实现
2020/11/27 Vue.js
python实现去除下载电影和电视剧文件名中的多余字符的方法
2014/09/23 Python
python文件读写操作与linux shell变量命令交互执行的方法
2015/01/14 Python
5种Python单例模式的实现方式
2016/01/14 Python
Python3 加密(hashlib和hmac)模块的实现
2017/11/23 Python
python使用tkinter实现简单计算器
2018/01/30 Python
NumPy 如何生成多维数组的方法
2018/02/05 Python
浅谈关于Python3中venv虚拟环境
2018/08/01 Python
Python xlrd excel文件操作代码实例
2020/03/10 Python
Python作用域与名字空间原理详解
2020/03/21 Python
John Hardy官方网站:手工设计首饰的奢侈品牌
2017/07/05 全球购物
实习护士自我鉴定
2013/10/13 职场文书
大学生作弊检讨书
2014/02/19 职场文书
潘婷洗发水广告词
2014/03/14 职场文书
六个一活动实施方案
2014/03/21 职场文书
活动倡议书范文
2014/05/13 职场文书
女生节标语
2014/06/26 职场文书
交通肇事罪辩护词
2015/05/21 职场文书
小学生大队委竞选稿
2015/11/20 职场文书
python 实现图片特效处理
2022/04/03 Python