广告位联系
返回顶部
分享到

JS实现简单轮播图效果的教程

JavaScript 来源:转载 作者:秩名 发布时间:2018-12-02 19:42:09 人浏览
摘要

本篇文章给大家介绍JS实现简单轮播图效果的教程。 可以实现左右翻转,图片切换显示等效果,如下图所示: 代码展示: !doctype html html!-- 学习功能:使用JavaScript实现图片轮播,左右翻转,图片切换显示等。 author: lisa于2018-5-30 --title meta charse

本篇文章给大家介绍JS实现简单轮播图效果的教程。

可以实现左右翻转,图片切换显示等效果,如下图所示:



代码展示:


<!doctype html>
  
<html>
<!-- 
 学习功能:使用JavaScript实现图片轮播,左右翻转,图片切换显示等。
 author: lisa于2018-5-30
 -->
<title>
 <meta charset="utf-8">
</title>
  
<body>
 <div class="maindiv">
 <style>
  * {
  margin: 0px;
  padding: 0px;
  }
  
  .shidian {
  width: 600px;
  height: 300px;
  position: relative;
  }
  
  .shidian>#shidian_img {
  width: 100%;
  height: 100%;
  
  }
  
  .shidian>#shidian_img li {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0px;
  top: 0px;
  }
  
  .shidian>#shidian_img img {
  width: 100%;
  height: 100%;
  }
  
  .shidian>#shidian_nav li {
  float: left;
  width: 20px;
  height: 20px;
  background: #ffffff;
  border: 1px #ffff00 solid;
  margin-left: 10px;
  text-align: center;
  line-height: 20px;
  list-style: none;
  }
  
  .shidian>#shidian_nav {
  position: absolute;
  right: 10px;
  bottom: 10px;
  }
  
  .shidian>#shidian_nav .active {
  background: 0000ff;
  color: black;
  cursor: pointer;
  }
  
  .shidian .img_nav {
  position: absolute;
  top: 140px;
  width: 100%
  }
  
  .shidian .img_nav .left {
  cursor: pointer;
  }
  
  .shidian .img_nav .right {
  cursor: pointer;
  float: right;
  }
 </style>
 <div class="shidian">
  <ul id="shidian_img" onmouseover="stop_img()" onmouseout="start_img()">
  <li><img src="./image/1.jpg" /></li>
  <li><img src="./image/3.jpg" /></li>
  <li><img src="./image/2.jpg" /></li>
  <li><img src="./image/4.jpg" /></li>
  </ul>
  <ul id="shidian_nav">
  <li class="active" onmouseover="show_img1(this);">1</li>
  <li class="active" onmouseover="show_img1(this);">2</li>
  <li class="active" onmouseover="show_img1(this);">3</li>
  <li class="active" onmouseover="show_img1(this);">4</li>
  </ul>
  <div class="img_nav">
  <span class="left" onclick="left_img()"><<</span>
  <span class="right" onclick="right_img()">>></span>
  </div>
 </div>
  
 <script>
  index = 0;
  imgs = document.getElementById("shidian_img").children; //获得图片节点
  navs = document.getElementById("shidian_nav").children; // 获得右下图片导航的节点
  
  //下一张轮播图片
  function next_img() {
  index++;
  if (index >= imgs.length) {
   index = 0;
  }
  show_log();
  }
  
  //正常显示图片
  function show_log() {
  for (i = 0; i < imgs.length; i++) {
   imgs[i].style.display = "none";
   imgs[i].className = "";
  }
  //console.log(index)
  if (index >= imgs.length) {
   index = 0;
  }
  imgs[index].style.display = "block";
  imgs[index].className = "active";
  }
  show_log();
  timer = setInterval(next_img, 1000);
  
  function stop_img() {
  clearInterval(timer);
  }
  
  function start_img() {
  timer = setInterval(next_img, 1000);
  }
  
  //随机切换显示图片
  function show_img1(obj) {
  stop_img();
  index = getIndex(obj.parentNode, obj);
  show_log();
  
  }
  
  //向左翻图片
  function left_img() {
  stop_img();
  index--;
  if (index < 0) index = imgs.length - 1;
  show_log();
  start_img();
  }
  
  //向右翻图片
  function right_img() {
  stop_img();
  index++;
  if (index > imgs.length) index = 0;
  show_log();
  start_img();
  }
  
  //获得当前的节点
  function getIndex(parent, obj) {
  //console.log(obj.innerHTML);
  e = parent.children;
  for (i = 0; i < e.length; i++) {
   if (e[i] == obj) {
   return i;
   }
  }
  }
 </script>
 </div>
</body>
  
</html>




版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 :
相关文章
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计