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 相关文章推荐
实例:尽可能写友好的Javascript代码
Oct 09 Javascript
Jquery中对数组的操作代码
Aug 12 Javascript
js中关于一个分号的崩溃示例
Nov 11 Javascript
动态载入js提高网页打开速度的方法
Jul 04 Javascript
js弹出框、对话框、提示框、弹窗实现方法总结(推荐)
May 31 Javascript
基于BootStrap环境写jQuery tabs插件
Jul 12 Javascript
Jquery Easyui日历组件Calender使用详解(23)
Dec 18 Javascript
jquery实现表单获取短信验证码代码
Mar 13 Javascript
jQuery+pjax简单示例汇总
Apr 21 jQuery
JavaScript基于replace+正则实现ES6的字符串模版功能
Apr 25 Javascript
AngularJS select加载数据选中默认值的方法
Feb 28 Javascript
js点击事件的执行过程实例分析【冒泡与捕获】
Apr 11 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
PHP获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)
2013/06/18 PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
2015/12/25 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
用JavaScript计算在UTF-8下存储字符串占用字节数
2013/08/08 Javascript
JS.GetAllChild(element,deep,condition)使用介绍
2013/09/21 Javascript
JavaScript中的普通函数与构造函数比较
2015/04/07 Javascript
基于javascript实现窗口抖动效果
2016/01/03 Javascript
动态加载js文件简单示例
2016/04/21 Javascript
JavaScript_object基础入门(必看篇)
2016/06/13 Javascript
JavaScript 数组- Array的方法总结(推荐)
2016/07/21 Javascript
详解数组Array.sort()排序的方法
2020/05/09 Javascript
JS基于正则表达式的替换操作(replace)用法示例
2017/04/28 Javascript
史上最全JavaScript数组去重的十种方法(推荐)
2017/08/17 Javascript
echarts学习笔记之箱线图的分析与绘制详解
2017/11/22 Javascript
ExtJs使用自定义插件动态保存表头配置(隐藏或显示)
2018/09/25 Javascript
JavaScript变速动画函数封装添加任意多个属性
2019/04/03 Javascript
Node.js对MongoDB进行增删改查操作的实例代码
2019/04/18 Javascript
Vue 引入AMap高德地图的实现代码
2019/04/29 Javascript
在JavaScript中使用严格模式(Strict Mode)
2019/06/13 Javascript
Python中使用装饰器时需要注意的一些问题
2015/05/11 Python
requests和lxml实现爬虫的方法
2017/06/11 Python
python实现二叉树的遍历
2017/12/11 Python
python 获取当天凌晨零点的时间戳方法
2018/05/22 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
2018/06/11 Python
对python 中re.sub,replace(),strip()的区别详解
2019/07/22 Python
Java文件与类动手动脑实例详解
2019/11/10 Python
15行Python代码实现免费发送手机短信推送消息功能
2020/02/27 Python
使用tensorflow框架在Colab上跑通猫狗识别代码
2020/04/26 Python
深入解析HTML5的IndexedDB索引数据库
2015/09/14 HTML / CSS
extern在函数声明中是什么意思
2014/01/19 面试题
优秀学生党员先进事迹材料
2014/05/29 职场文书
电子信息工程专业求职信
2014/06/28 职场文书
储备店长岗位职责
2015/04/14 职场文书
适合毕业生创业的项目怎么找?
2019/08/08 职场文书
利用Apache Common将java对象池化的问题
2022/06/16 Servers