js实现轮播图效果 z-index实现轮播图


Posted in Javascript onJanuary 17, 2020

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

实现轮播图

学习前端差不多两三个月,在这里记录分享一下。因本人菜鸟一枚,希望大佬们多多指点,勿喷。

通过计算每一张图片高度实现滑动轮播图

HTML代码:

<div class="fate">
 <div class="lancer">
 <ul class="saber">
  <li><img src="img/illust_13010631_20191118_150928.jpg"></li>
  <li><img src="img/illust_13010631_20191118_150928.jpg"></li>
   <li><img src="img/illust_13010631_20191118_150928.jpg"></li>
   <li><img src="img/illust_13010631_20191118_150928.jpg"></li>
   <li><img src="img/illust_13010631_20191118_150928.jpg"></li>
  </ul>
  </div>
 </div>
 <div class="archer">
  <button class="goup" onclick="goup()"><</button> 
  <button class="godown" onclick="godown()">></button>
</div>

CSS代码:

* {
 transition: all 1s;
 margin: 0px;
 padding: 0px;
}

.fate {
 position: absolute;
 top: 0%;
 width: 512px;
 height: 512px;
 overflow: hidden;
}

ul li {
 list-style: none;
}
.lancer{
 position: absolute;
 top: 0%;
 width: 100%;
 height: 100%;
}
.saber {
 top: 0px;
 position: absolute;
}
.archer{
 position: absolute;
}
button {
 z-index: 99;
}

JS代码:

var index=0;
function godown(){
  var li = document.getElementsByTagName("li");
 //获取单个li宽度(单张图片高度)
 var liHeight = li[0].scrollHeight;
  
 var goup=document.getElementsByClassName("goup");
 var lancer=document.getElementsByClassName("lancer")[0];
 if(index<4){
  index++;
  }else{
    index=0;
  }
  lancer.style.top = -index*liHeight+"px";
  }
function goup(){
 var li = document.getElementsByTagName("li");
  //获取单个li宽度(单张图片高度)
  var liHeight = li[0].scrollHeight;
  
  var goup=document.getElementsByClassName("goup");
  var lancer=document.getElementsByClassName("lancer")[0];
  if(index>0){
   index--;
  }else{
  index=4;
 }
 lancer.style.top = -index*liHeight+"px";
}

如有错误望指出。

利用z-index实现轮播图
HTML代码

<div class="fate">
    <div class="saber">
      <ul>
        <li class="archer active"><img src="img/illust_13010631_20191118_150928.jpg"></li>
        <li class="archer"><img src="img/illust_13010631_20191118_150928.jpg"></li>
        <li class="archer"><img src="img/illust_13010631_20191118_150928.jpg"></li>
        <li class="archer"><img src="img/illust_13010631_20191118_150928.jpg"></li>
        <li class="archer"><img src="img/illust_13010631_20191118_150928.jpg"></li>
      </ul>
    </div>
  </div>
  <div class="lancer">
    <button id="goup">></button>
    <button id="godown"><</button>
</div>

CSS代码

li {
      list-style: none;
    }
    
    .archer {
      position: absolute;
      top: 0%;
      display: none;
    }
    
    .active {
      display: block;
    }
    
    button {
      position: absolute;
      top: 70%;
      width: 50px;
    }
    
    #goup {
      left: 400px;
    }
    
    #godown {
      left: 0px;
    }

JS代码

var pic = document.getElementsByTagName("li");
    var archer = document.getElementsByClassName("archer");
    var goup = document.getElementById("goup");
    var godown = document.getElementById("godown");
    var index = 0;
    goup.onclick = function() {
      for (var i = 0; i < pic.length; i++) {
        pic[i].className = "archer";
      }
      if (index < 4) {
        index++;
      } else {
        index = 0;
      }
      pic[index].className = "active";

    }
    godown.onclick = function() {
      for (var i = 0; i < pic.length; i++) {
        pic[i].className = "archer";
      }
      if (index > 0) {
        index--;
      } else {
        index = 4;
      }
      pic[index].className = "active";

    }

利用index来实现轮播,但是生硬。

结语

以上就是两种方法实现轮播图效果。

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

Javascript 相关文章推荐
动态加载js的几种方法
Oct 23 Javascript
JS操作JSON要领详细总结
Aug 25 Javascript
$.get获取一个文件的内容示例代码
Sep 11 Javascript
JavaScript中数据结构与算法(三):链表
Jun 19 Javascript
MVC Ajax Helper或Jquery异步加载部分视图
Nov 29 Javascript
javascript实现自动填写表单实例简析
Dec 02 Javascript
详解AngularJS 模态对话框
Apr 07 Javascript
使用vue中的v-for遍历二维数组的方法
Mar 07 Javascript
vue无限轮播插件代码实例
May 10 Javascript
vue通过数据过滤实现表格合并
Nov 30 Javascript
JavaScript接口实现方法实例分析
May 16 Javascript
基于angular实现树形二级表格
Oct 16 Javascript
js键盘事件实现人物的行走
Jan 17 #Javascript
javascript实现简易的计算器
Jan 17 #Javascript
JavaScript简易计算器制作
Jan 17 #Javascript
vue下axios拦截器token刷新机制的实例代码
Jan 17 #Javascript
js布局实现单选按钮控件
Jan 17 #Javascript
vue 查看dist文件里的结构(多种方式)
Jan 17 #Javascript
JavaScript数组去重实现方法小结
Jan 17 #Javascript
You might like
使用php计算排列组合的方法
2013/11/13 PHP
php中opendir函数用法实例
2014/11/15 PHP
gearman中任务的优先级和返回状态实例分析
2020/02/27 PHP
JavaScript Chart 插件整理
2010/06/18 Javascript
js模拟select下拉菜单控件的代码
2013/05/08 Javascript
JS使用oumousemove和oumouseout动态改变图片显示的方法
2015/03/31 Javascript
在Node.js中使用HTTP上传文件的方法
2015/06/23 Javascript
javascript实现简单的全选和反选功能
2016/01/05 Javascript
JavaScript中Promise的使用详解
2017/02/26 Javascript
js学习总结之DOM2兼容处理顺序问题的解决方法
2017/07/27 Javascript
vue注册组件的几种方式总结
2018/03/08 Javascript
关于jquery中attr()和prop()方法的区别
2018/05/28 jQuery
学习jQuery中的noConflict()用法
2018/09/28 jQuery
webpack中如何使用雪碧图的示例代码
2018/11/11 Javascript
微信小程序实现菜单左右联动
2020/05/19 Javascript
windows下安装python paramiko模块的代码
2013/02/10 Python
Python列表生成器的循环技巧分享
2015/03/06 Python
python实现画一颗树和一片森林
2018/06/25 Python
Windows下PyCharm安装图文教程
2018/08/27 Python
在pycharm下设置自己的个性模版方法
2019/07/15 Python
Python通过Pillow实现图片对比
2020/04/29 Python
Python实现清理微信僵尸粉功能示例【基于itchat模块】
2020/05/29 Python
使用python实现名片管理系统
2020/06/18 Python
如何基于Python爬虫爬取美团酒店信息
2020/11/03 Python
pycharm最新激活码有效期至2100年(亲测可用)
2021/02/05 Python
Zatchels官网:英国剑桥包品牌
2021/01/12 全球购物
Linux面试题LINUX系统类
2014/11/19 面试题
就业推荐自我鉴定
2013/10/06 职场文书
黄继光的英雄事迹材料
2014/02/13 职场文书
前台接待岗位职责
2015/02/03 职场文书
社团个人总结范文
2015/03/05 职场文书
机器人总动员观后感
2015/06/09 职场文书
2015年圣诞节寄语
2015/08/17 职场文书
浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
2021/05/21 Python
uniapp 微信小程序 自定义tabBar 导航
2022/04/22 Javascript
Go Grpc Gateway兼容HTTP协议文档自动生成网关
2022/06/16 Golang