原生js实现点击轮播切换图片


Posted in Javascript onFebruary 11, 2020

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

原生js实现点击轮播切换图片

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>点击轮播图</title>
</head>
<style>
    .container {
      position: relative;
      width: 600px;
      height: 400px;
      margin:100px auto 0 auto;
      box-shadow: 0 0 5px green;
      overflow: hidden;
    } 
    .wrap {
      position: absolute;
      width: 4200px;
      height: 400px;
      z-index: 1;
    }
    .container .wrap img {
      float: left;
      width: 600px;
      height: 400px;
    }
     .container .buttons {
      position: absolute;
      right: 40%;
      bottom:20px;     
      z-index: 2;
    }  
    .container .buttons span {
      margin-left: 10px;
      display: inline-block;
      width: 7px;
      height: 7px;     
      background-color: #D4D4D4;
      text-align: center;
      color:white;
      cursor: pointer;      
    }
    .container .buttons span.on{
      background-color: #558949;
    }
    .container .arrow {
      position: absolute;
      top: 35%;
      color: green;
      padding:0px 14px;
      border-radius: 50%;
      font-size: 50px;
      z-index: 2;
      display: none;
    }
</style>
<body>
  <div class="container">
    <div class="wrap" style="left:-600px;">
      <img alt="">
      <img src="./img/jd_app3.png" alt="">
      <img src="./img/jd_app4.png" alt="">
      <img src="./img/jd_app5.png" alt="">
      <img src="./img/jd_app6.png" alt="">
      <img src="./img/jd_app7.png" alt="">    
    </div>
    <div class="buttons">
      <span></span>
      <span></span>
      <span></span>
      <span></span>
      <span></span>
    </div>  
  </div>
  
  <script>
   var wrap = document.querySelector(".wrap");     
    var index = 0;
    var dots = document.getElementsByTagName("span");
    function showCurrentDot () {
      for(var i = 0, len = dots.length; i < len; i++){
        dots[i].className = "";
      }
      dots[index].className = "on";
    }
    index++;
      if(index > 4){
        index = 0;
      }
    index--;
    if(index < 0){
      index = 4;
    }
    showCurrentDot();
     for (var i = 0, len = dots.length; i < len; i++){
      (function(i){
        dots[i].onclick = function () {
          var dis = index - i;
          if(index == 4 && parseInt(wrap.style.left)!==-3000){
            dis = dis - 5;   
          }
          //和使用prev和next相同,在最开始的照片5和最终的照片1在使用时会出现问题,导致符号和位数的出错,做相应地处理即可
          if(index == 0 && parseInt(wrap.style.left)!== -600){
            dis = 5 + dis;
          }
          wrap.style.left = (parseInt(wrap.style.left) + dis * 600)+"px";
          index = i;
          showCurrentDot();
        }
      })(i);      
    }
  </script>
</body>
</html>

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

Javascript 相关文章推荐
js调用flash的效果代码
Apr 26 Javascript
浅析jQuery1.8的几个小变化
Dec 10 Javascript
jQuery定义背景动态切换效果的方法
Mar 23 Javascript
如何学JavaScript?前辈的经验之谈
Dec 28 Javascript
canvas实现图像布局填充功能
Feb 06 Javascript
JS中showModalDialog关闭子窗口刷新主窗口用法详解
Mar 25 Javascript
JavaScript数据结构与算法之二叉树插入节点、生成二叉树示例
Feb 21 Javascript
Vue多组件仓库开发与发布详解
Feb 28 Javascript
Vue 使用formData方式向后台发送数据的实现
Apr 14 Javascript
node中使用log4js4.x版本记录日志的方法
Aug 20 Javascript
详解vue3.0 diff算法的使用(超详细)
Jul 01 Javascript
基于小程序请求接口wx.request封装的类axios请求
Jul 02 Javascript
node.js中process进程的概念和child_process子进程模块的使用方法示例
Feb 11 #Javascript
小程序如何定位所在城市及发起周边搜索
Feb 11 #Javascript
JS+DIV实现拖动效果
Feb 11 #Javascript
vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应)
Feb 11 #Javascript
原生js拖拽实现图形伸缩效果
Feb 10 #Javascript
js实现单元格拖拽效果
Feb 10 #Javascript
详解Vue template 如何支持多个根结点
Feb 10 #Javascript
You might like
xss防御之php利用httponly防xss攻击
2014/03/21 PHP
成为好程序员必须避免的5个坏习惯
2014/07/04 PHP
php中的常用魔术方法汇总
2016/02/14 PHP
PHP上传Excel文件导入数据到MySQL数据库示例
2016/10/25 PHP
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
javascript实现日历控件(年月日关闭按钮)
2012/12/12 Javascript
Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法
2013/01/27 Javascript
jquery 面包屑导航 具体实现
2013/06/05 Javascript
Jjcarousellite 实现图片列表滚动的简单实例
2013/11/29 Javascript
Javascript字符串浏览器兼容问题分析
2014/12/01 Javascript
node.js中的fs.rename方法使用说明
2014/12/16 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
js实现tab切换效果
2017/02/16 Javascript
NodeJs的fs读写删除移动监听
2017/04/28 NodeJs
Node.js安装配置图文教程
2017/05/10 Javascript
JavaScript简介_动力节点Java学院整理
2017/06/26 Javascript
原生JS实现移动端web轮播图详解(结合Tween算法造轮子)
2017/09/10 Javascript
微信小程序中setInterval的使用方法
2017/09/29 Javascript
Vue.js实现的计算器功能完整示例
2018/07/11 Javascript
详解axios中封装使用、拦截特定请求、判断所有请求加载完毕)
2019/04/09 Javascript
微信小程序如何使用canvas二维码保存至手机相册
2019/07/15 Javascript
JS面向对象之多选框实现
2020/01/17 Javascript
浅谈vue使用axios的回调函数中this不指向vue实例,为undefined
2020/09/21 Javascript
微信小程序实现锚点跳转
2020/11/23 Javascript
[59:59]EG vs IG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python3使用requests登录人人影视网站的方法
2016/05/11 Python
使用Anaconda3建立虚拟独立的python2.7环境方法
2018/06/11 Python
python 实现查找文件并输出满足某一条件的数据项方法
2019/06/12 Python
Python+OpenCV图像处理——实现轮廓发现
2020/10/23 Python
法律专业学生的自我评价
2014/02/07 职场文书
搞笑创意广告语
2014/03/17 职场文书
关于工作经历的证明书
2014/10/11 职场文书
清洁工个人工作总结
2015/03/05 职场文书
2016廉政教育学习心得体会
2016/01/25 职场文书
详解Spring事件发布与监听机制
2021/06/30 Java/Android
全面盘点MySQL中的那些重要日志文件
2021/11/27 MySQL