js手动播放图片实现图片轮播效果


Posted in Javascript onSeptember 17, 2016

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

一、html代码部分(et.thtml):

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title></title>
  <link type="text/css" rel="stylesheet" href="css/styleet.css">
  <script type="text/javascript" src="js/system.js"></script>
</head>
<body>
  <div id="main">
    <div id="top">
      <span id="imgL" class="span1"></span>
      <img src="images/1.jpg" id="img" data-index="1" alt=""/>
      <span id="imgR" class="span2"></span>
    </div>
    <div id="bottom">
      <img src="images/1.jpg" id="img1" class="focusClass" data-index="1" alt=""/>
      <img src="images/2.jpg" id="img2" class="initClass" data-index="2" alt=""/>
      <img src="images/3.jpg" id="img3" class="initClass" data-index="3" alt=""/>
      <img src="images/4.jpg" id="img4" class="initClass" data-index="4" alt=""/>
      <img src="images/5.jpg" id="img5" class="initClass" data-index="5" alt=""/>
      <img src="images/6.jpg" id="img6" class="initClass" data-index="6" alt=""/>
      <img src="images/7.jpg" id="img7" class="initClass" data-index="7" alt=""/>
    </div>
  </div>
  <script type="text/javascript" src="js/et.js"></script>
</body>
</html>

二、css代码部分(styleet,css):

#main span{
  width: 22px;
  height: 38px;
  position: absolute;
  display: inline-block;
  cursor: pointer;
  background: url("../images/1.png") no-repeat 0 0;
}
.span1{
  background-position: 0 0;
  left:20px;
  top: 90px;
}
.span2{
  background-position: -22px 0;
  right: 20px;
  top: 90px;
}
#main{
  width: 500px;
  margin: 20px auto;
  text-align: center;
  border: solid 2px red;
  position: relative;
}
.initClass{
  width: 50px;
  border: solid 2px #fff;
  margin: 10px 5px;
}
.focusClass{
  width: 50px;
  border: solid 2px red;
  margin: 10px 5px;
}

三、js代码部分(et.js):

/**
 * Created by LuanReco on 2015/8/28.
 */
var slide={
  arrImg:new Array('images/1.jpg','images/2.jpg','images/3.jpg','images/4.jpg','images/5.jpg','images/6.jpg','images/7.jpg'),
  initClass:'initClass',
  focusClass:'focusClass',
  index:1,
  arrMax:7,
  imgMain:'img'
}
slide.top={
  //导航事件
  navEvent:function(){
    //上部分大图片显示累加后下标对应的图片
    $$(slide.imgMain).src=slide.arrImg[slide.index-1];
    //根据焦点下标值组合成导航图片名称
    var n='img'+slide.index;
    //执行对应导航图片单击事件
    $$(n).click();
  },
  //处理页面上一部分的逻辑
  clickRight:function(){
    //点击向右按钮处理事件
    console.log(slide.index);

    //当下标小于或等于最大图片数量时
    if(slide.index<slide.arrMax){
      //累加当前下标值
      slide.index++;
      slide.top.navEvent();
    }

  },
  clickLeft:function(){
    //点击向右按钮处理事件
    console.log(slide.index);

    //当下标小于或等于最大图片数量时
    if(slide.index>1){
      //累加当前下标值
      slide.index--;
      slide.top.navEvent();
    }

  }
}
slide.bottom={
  initImgClass:function(){
    //初始化全部对不图片的样式
    for(var i=1;i<=slide.arrMax;i++){
      var n='img'+i;
      $$(n).className=slide.initClass;
    }
  },
  click:function(){
    //处理页面下一部分的逻辑
    $$('imgL').onclick=function(){
      slide.top.clickLeft();
    }
    $$('imgR').onclick=function(){
      slide.top.clickRight();
    }
    //获取所有底部的小图片
    for(var i=1;i<=slide.arrMax;i++){
      //为每一张图片绑定点击事件
      var n='img'+i;
      $$(n).onclick=function(){
        //初始化全部样式
        slide.bottom.initImgClass();
        //图片元素本身获取焦点样式
        this.className=slide.focusClass;
        //在上部图片中显示点击小图片对应的大图片
        $$(slide.imgMain).src=slide.arrImg[this.getAttribute('data-index')-1];
        //重新记录焦点图片在数组中的对应下标位置
        slide.index=this.getAttribute('data-index');
      }
    }
  }
}
slide.autoplay={
  play:function(){
    var m=1;
    //for(var i=1;i<=slide.arrMax;i++){
      setInterval(function(){
        var n='img'+m;
        m++;
        $$(n).click();
        if(m>6)
          m=1;
      },1000)
    //}
  }
}

slide.autoplay.play();
slide.bottom.click();

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

Javascript 相关文章推荐
js用Date对象的setDate()函数对日期进行加减操作
Sep 18 Javascript
12种JavaScript常用的MVC框架比较分析
Nov 16 Javascript
微信小程序 wxapp内容组件 text详细介绍
Oct 31 Javascript
vue与bootstrap实现时间选择器的示例代码
Aug 26 Javascript
微信小程序基于picker实现级联菜单
Feb 15 Javascript
vue基础之事件简写、事件对象、冒泡、默认行为、键盘事件实例分析
Mar 11 Javascript
如何自动化部署项目?折腾服务器之旅~
Apr 16 Javascript
Vue+iview+webpack ie浏览器兼容简单处理
Sep 20 Javascript
使用p5.js临摹动态图片
Nov 04 Javascript
js 闭包深入理解与实例分析
Mar 19 Javascript
使用JavaScript实现贪吃蛇游戏
Sep 29 Javascript
vue通过接口直接下载java生成好的Excel表格案例
Oct 26 Javascript
Bootstrap时间选择器datetimepicker和daterangepicker使用实例解析
Sep 17 #Javascript
AngularJS使用自定义指令替代ng-repeat的方法
Sep 17 #Javascript
Bootstrap Table表格一直加载(load)不了数据的快速解决方法
Sep 17 #Javascript
AngularJS中关于ng-class指令的几种实现方式详解
Sep 17 #Javascript
AngularJS中过滤器的使用与自定义实例代码
Sep 17 #Javascript
利用js编写响应式侧边栏
Sep 17 #Javascript
各式各样的导航条效果css3结合jquery代码实现
Sep 17 #Javascript
You might like
php共享内存段示例分享
2014/01/20 PHP
js 目录列举函数
2008/11/06 Javascript
IE iframe的onload方法分析小结
2010/01/07 Javascript
12个非常有创意的JavaScript小游戏
2010/03/18 Javascript
给ListBox添加双击事件示例代码
2013/12/02 Javascript
JS实现根据当前文字选择返回被选中的文字
2014/05/21 Javascript
js实现在同一窗口浏览图片
2014/09/17 Javascript
jQuery修改class属性和CSS样式整理
2015/01/30 Javascript
浅析ES6的八进制与二进制整数字面量
2016/08/30 Javascript
Bootstrap分页插件之Bootstrap Paginator实例详解
2016/10/15 Javascript
大白话讲解JavaScript的Promise
2017/04/06 Javascript
React如何避免重渲染
2018/04/10 Javascript
对vue中v-if的常见使用方法详解
2018/09/28 Javascript
vue axios 简单封装以及思考
2018/10/09 Javascript
vue框架制作购物车小球动画效果实例代码
2019/09/26 Javascript
微信小程序实现侧边栏分类
2019/10/21 Javascript
javascript全局自定义鼠标右键菜单
2020/12/08 Javascript
详解微信小程序轨迹回放实现及遇到的坑
2021/02/02 Javascript
[06:04]DOTA2英雄梦之声Vol19卓尔游侠
2014/06/20 DOTA
[01:51]2018年度CS GO最具人气外援-完美盛典
2018/12/16 DOTA
python 查找文件夹下所有文件 实现代码
2009/07/01 Python
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
python web.py开发httpserver解决跨域问题实例解析
2018/02/12 Python
解决Shell执行python文件,传参空格引起的问题
2018/10/30 Python
Numpy截取指定范围内的数据方法
2018/11/14 Python
浅谈Pandas:Series和DataFrame间的算术元素
2018/12/22 Python
基于Django静态资源部署404的解决方法
2019/07/28 Python
pymysql 开启调试模式的实现
2019/09/24 Python
python matplotlib拟合直线的实现
2019/11/19 Python
荷兰网上鞋店:Ziengs.nl
2017/01/02 全球购物
英国儿童设计师服装的领先零售商:Base
2019/03/17 全球购物
Nasty Gal英国:美国女性服饰销售网站
2021/03/02 全球购物
《我不是最弱小的》教学反思
2014/02/23 职场文书
人身损害赔偿协议书范本
2014/09/27 职场文书
2015社区爱国卫生工作总结
2015/04/21 职场文书
2015年英语教研组工作总结
2015/05/23 职场文书