js图片轮播效果实现代码


Posted in Javascript onApril 18, 2020

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

首先给大家看一看js图片轮播效果,如下图

js图片轮播效果实现代码

js图片轮播效果实现代码

具体思路:

一、页面加载、获取整个容器、所有放数字索引的li及放图片列表的ul、定义放定时器的变量、存放当前索引的变量index
二、添加定时器,每隔2秒钟index递增一次、调用一次切换图片函数
提示:
1、 index不能一直无限制的递增下去,需做判断
2、调用切换图片函数时需将递增之后的index作为参数传过去
三、定义图片切换函数
提示:
  1.遍历所有放数字索引的li,将每个li上的类去掉。
  2.根据传递过来的index值找到对应的li给它添加类设为当前高亮显示。
  3. 根据传递过来的index值计算放图片的ul的top值
  4. 改变index的值,让其等于传递过来的参数值
注意:放图片的ul的top值=-index*单张图片的高度(所有图片必须等高)
四、鼠标划过整个容器时,图片停止切换,离开继续
提示:
1.  鼠标滑过整个容器时清除定时器
2.  鼠标离开时继续执行定时器,切换至下一张图片
五、遍历所有放数字的li,且给他们添加索引、鼠标滑过时切换至对应的图片。
        鼠标滑过时调用图片切换函数,将滑过的li的索引传过去。
具体代码如下:

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 <style>
 *{margin:0;
 padding:0;
 list-style:none;}
 .wrap{height:170px;
 width:490px;
 margin:60px auto;
 overflow: hidden;
 position: relative;
 margin:100px auto;}
 .wrap ul{position:absolute;} 
 .wrap ul li{height:170px;}
 .wrap ol{position:absolute;
 right:5px;
 bottom:10px;}
 .wrap ol li{height:20px; width: 20px;
 background:#ccc;
 border:solid 1px #666;
 margin-left:5px;
 color:#000;
 float:left;
 line-height:center;
 text-align:center;
 cursor:pointer;}
 .wrap ol .on{background:#E97305;
 color:#fff;}

 </style>
 <script type="text/javascript">
 window.onload=function(){
 var wrap=document.getElementById('wrap'),
 pic=document.getElementById('pic').getElementsByTagName("li"),
 list=document.getElementById('list').getElementsByTagName('li'),
 index=0,
 timer=null;

 // 定义并调用自动播放函数
 timer = setInterval(autoPlay, 2000);

 // 鼠标划过整个容器时停止自动播放
 wrap.onmouseover = function () {
 clearInterval(timer);
 }

 // 鼠标离开整个容器时继续播放至下一张
 wrap.onmouseout = function () {
 timer = setInterval(autoPlay, 2000);
 }
 // 遍历所有数字导航实现划过切换至对应的图片
 for (var i = 0; i < list.length; i++) {
 list[i].onmouseover = function () {
 clearInterval(timer);
 index = this.innerText - 1;
 changePic(index);
 };
 };

 function autoPlay () {
 if (++index >= pic.length) index = 0;
 changePic(index);
 }

 // 定义图片切换函数
 function changePic (curIndex) {
 for (var i = 0; i < pic.length; ++i) {
 pic[i].style.display = "none";
 list[i].className = "";
 }
 pic[curIndex].style.display = "block";
 list[curIndex].className = "on";
 }

 };

 </script> 
</head>
<body>
 <div class="wrap" id='wrap'>
 <ul id="pic">
 <li><img src="1.jpg" alt=""></li>
 <li><img src="2.jpg" alt=""></li>
 <li><img src="3.jpg" alt=""></li>
 <li><img src="4.jpg" alt=""></li>
 <li><img src="5.jpg" alt=""></li> 
 </ul>
 <ol id="list">
 <li class="on">1</li>
 <li>2</li>
 <li>3</li>
 <li>4</li>
 <li>5</li>
 </ol>
 </div>
</body>
</html>

精彩专题分享:jQuery图片轮播 JavaScript图片轮播 Bootstrap图片轮播

以上就是本文的全部内容,为大家分享了js图片轮播效果实现代码,希望大家喜欢,根据自己的喜好更换图片,制作属于自己的图片轮播效果。

Javascript 相关文章推荐
找到一点可怜的关于dojo资料,谢谢作者!
Dec 06 Javascript
jQuery实现页面顶部显示的进度条效果完整实例
Dec 09 Javascript
第二篇Bootstrap起步
Jun 21 Javascript
sea.js常用的api简易文档
Nov 15 Javascript
基于JS组件实现拖动滑块验证功能(代码分享)
Nov 18 Javascript
微信小程序 登录的简单实现
Apr 19 Javascript
Bootstrap popover 实现鼠标移入移除显示隐藏功能方法
Jan 24 Javascript
JS实现的base64加密解密操作示例
Apr 18 Javascript
JS内部事件机制之单线程原理
Jul 02 Javascript
超详细动手搭建一个VuePress 站点及开启PWA与自动部署的方法
Jan 27 Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
Dec 06 Javascript
详解如何在JS代码中消灭for循环
Dec 11 Javascript
javascript伸缩菜单栏实现代码分享
Nov 12 #Javascript
javascript发送短信验证码实现代码
Nov 12 #Javascript
javascript倒计时效果实现
Nov 12 #Javascript
基于jquery步骤进度条源码分享
Nov 12 #Javascript
javascript手风琴下拉菜单实现代码
Nov 12 #Javascript
javascript弹出窗口实现代码
Nov 12 #Javascript
javascript实现tab切换特效
Nov 12 #Javascript
You might like
PHP 采集程序 常用函数
2008/12/18 PHP
PHP 数据结构 算法描述 冒泡排序 bubble sort
2011/07/10 PHP
php格式输出文件var_export函数实例
2014/11/15 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
2015/11/23 PHP
php 从指定数字中获取随机组合的简单方法(推荐)
2017/04/05 PHP
PHP实现的简单操作SQLite数据库类与用法示例
2017/06/19 PHP
Laravel实现定时任务的示例代码
2017/08/10 PHP
PHP封装的mysqli数据库操作类示例
2019/02/16 PHP
为指定元素增加样式的js代码
2009/12/09 Javascript
Jquery replace 字符替换实现代码
2010/12/02 Javascript
jQuery EasyUI API 中文文档 - Draggable 可拖拽
2011/09/29 Javascript
Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试
2012/02/13 Javascript
js创建表单元素并使用submit进行提交
2014/08/14 Javascript
jQuery实现的动态伸缩导航菜单实例
2015/05/07 Javascript
轻松掌握JavaScript策略模式
2016/08/25 Javascript
微信小程序 POST请求(网络请求)详解及实例代码
2016/11/16 Javascript
详解微信小程序入门五: wxml文件引用、模版、生命周期
2017/01/20 Javascript
canvas绘制多边形
2017/02/24 Javascript
详解微信小程序input标签正则初体验
2018/08/18 Javascript
inquirer.js一个用户与命令行交互的工具详解
2019/05/18 Javascript
[02:45]DOTA2英雄基础教程 伐木机
2013/12/23 DOTA
OpenCV 使用imread()函数读取图片的六种正确姿势
2020/07/09 Python
css3 矩阵的使用详解
2018/03/20 HTML / CSS
导出HTML5 Canvas图片并上传服务器功能
2019/08/16 HTML / CSS
手工制作的豪华英式沙发和沙发床:Willow & Hall
2019/05/03 全球购物
娱乐地球:Entertainment Earth
2020/01/08 全球购物
蔻驰英国官网:COACH英国
2020/07/19 全球购物
OnePlus加拿大官网:中国国际化手机品牌
2020/10/13 全球购物
一份Java笔试题
2012/02/21 面试题
应届毕业生求职信范文分享
2013/12/26 职场文书
岗位职责的构建方法
2014/02/01 职场文书
小学教师听课制度
2014/02/01 职场文书
供电工程专业求职信
2014/08/09 职场文书
转让协议书范本
2014/09/13 职场文书
个人批评与自我批评范文
2014/10/17 职场文书
党风廉洁教育心得体会
2016/01/20 职场文书