JavaScript实现简单轮播图效果


Posted in Javascript onDecember 01, 2018

本文实例为大家分享了js实现简单轮播图效果的具体代码,可以实现左右翻转,图片切换显示等效果,供大家参考,具体内容如下

效果展示:

JavaScript实现简单轮播图效果

代码展示:

<!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>

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

Javascript 相关文章推荐
jQuery对象[0]是什么含义?
Jul 31 Javascript
从零开始学习jQuery (六) jquery中的AJAX使用
Feb 23 Javascript
Javascript模块化编程(一)模块的写法最佳实践
Jan 17 Javascript
JS/FLASH实现复制代码到剪贴板(兼容所有浏览器)
May 27 Javascript
JQUERY 设置SELECT选中项代码
Feb 07 Javascript
分享自己用JS做的扫雷小游戏
Feb 17 Javascript
js轮盘抽奖实例分析
Apr 17 Javascript
15个非常实用的JavaScript代码片段
Dec 18 Javascript
基于node打包可执行文件工具_Pkg使用心得分享
Jan 24 Javascript
微信小程序封装的HTTP请求示例【附升级版】
May 11 Javascript
jquery实现商品sku多属性选择功能(商品详情页)
Dec 20 jQuery
JavaScript 如何在浏览器中使用摄像头
Dec 02 Javascript
jQuery-ui插件sortable实现自由拖动排序
Dec 01 #jQuery
jquery拖拽自动排序插件使用方法详解
Jul 20 #jQuery
vue实现移动端悬浮窗效果
Dec 01 #Javascript
vue拖拽组件使用方法详解
Dec 01 #Javascript
vue实现div拖拽互换位置
Jul 29 #Javascript
vue插件draggable实现拖拽移动图片顺序
Dec 01 #Javascript
vue.draggable实现表格拖拽排序效果
Dec 01 #Javascript
You might like
一个连接两个不同MYSQL数据库的PHP程序
2006/10/09 PHP
ThinkPHP写第一个模块应用
2012/02/20 PHP
PHP实现的memcache环形队列类实例
2015/07/28 PHP
thinkphp5引入公共部分header、footer的方法详解
2018/09/14 PHP
YII框架页面缓存操作示例
2019/04/29 PHP
做网页的一些技巧(续)
2007/02/01 Javascript
Javascript实现CheckBox的全选与取消全选的代码
2010/07/20 Javascript
基于MVC3方式实现下拉列表联动(JQuery)
2013/09/02 Javascript
将input file的选择的文件清空的两种解决方案
2013/10/21 Javascript
js判断当前浏览器类型,判断IE浏览器方法
2014/06/02 Javascript
Javascript基础教程之break和continue语句
2015/01/18 Javascript
JavaScript使用位运算符判断奇数和偶数的方法
2015/06/01 Javascript
jQuery实现日期联动效果实例
2016/07/26 Javascript
jQuery实现 上升、下降、删除、添加一行代码
2017/03/06 Javascript
详解Node.js串行化流程控制
2017/05/04 Javascript
Node.JS更改Windows注册表Regedit的方法小结
2017/08/18 Javascript
JavaScript设计模式之观察者模式实例详解
2019/01/16 Javascript
jquery插件实现轮播图效果
2020/10/19 jQuery
[02:00]DAC2018主宣传片——龙征四海,剑问东方
2018/03/20 DOTA
利用soaplib搭建webservice详细步骤和实例代码
2013/11/20 Python
Python中IPYTHON入门实例
2015/05/11 Python
Python实现字典依据value排序
2016/02/24 Python
python实现简单购物商城
2016/05/21 Python
python中子类调用父类函数的方法示例
2017/08/18 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
如何使用Python发送HTML格式的邮件
2020/02/11 Python
Hotter Shoes英国官网:英伦风格,舒适的鞋子
2017/12/28 全球购物
澳大利亚最受欢迎的美发用品目的地:AMR
2019/08/28 全球购物
武汉世纪畅想数字传播有限公司.NET笔试题
2014/07/22 面试题
新闻学专业应届生求职信
2013/11/08 职场文书
竞选卫生委员演讲稿
2014/04/28 职场文书
团拜会主持词
2015/07/04 职场文书
Python 中的Sympy详细使用
2021/08/07 Python
CSS+HTML 实现顶部导航栏功能
2021/08/30 HTML / CSS
如何解决goland,idea全局搜索快捷键失效问题
2022/04/03 Golang
Golang实现可重入锁的示例代码
2022/05/25 Golang