简单实现JavaScript图片切换效果


Posted in Javascript onNovember 28, 2016

JavaScript实现图片切换,主要用到setInterval()函数clearInterval()函数,前者功能是开启动画,后者功能则为清除动画(可理解为使动画停止),为了使动画停止,则需要定义全局变量作为标志,标志返回setInterval()函数的id,id作为clearInterval()函数的引用,目的是为了告诉clearInterval()函数动画暂停的位置。下面是实现的代码:

部分HTML代码:第一个为左按钮,是一张带箭头的透明图片,点击实现图片右滑动,第二个为图片展示区域,第三个是右按钮,点击实现图片左滑动。

<body onload="change()">
 <div id="changePhotos">
   <img src="images/left.png" id="leftimg" onclick="rightMove()"/>
   <img id="photo" src="images/4.jpg" onmouseover="off()" onmouseout="on()" />
   <img src="images/right.png" id="rightimg" onclick="leftMove()"/> 
 </div>
 </body>

JavaScript全部代码:JS主要实现鼠标放在图片上方,动画暂停,移开图片动画开始,以及点击左右按钮,图片的左右切换。

var photos = ['images/1.jpg','images/2.jpg','images/3.jpg','images/4.jpg','images/5.jpg'];
var count = 0; //记录图片张数
var flag; //返回动画id
function callback() //实现图片切换
{ 
 document.getElementById("photo").src = photos[count];
 count++;
 if (count == photos.length)
  count = 0; 
} 

function change() //动画开启
{
 flag = setInterval(callback,2000); 
}

function off() //onmouseover事件发生,动画暂停
{
 clearInterval(flag);
}

function on() //onmouseout事件发生,动画继续
{
 flag = setInterval(callback,2000); 
}

function leftMove() //实现左滑动
{
 document.getElementById("photo").src = photos[count];
 count++;
 if (count == photos.length)
  count = 0;
}

function rightMove() //实现右滑动
{
 count--;
 document.getElementById("photo").src = photos[count];
 if (count <= 0)
  count = photos.length - 1;
}

整体实现代码比较简单,具体展示样式则用到CSS,希望对初学者有所帮助!

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

Javascript 相关文章推荐
JQUERY CHECKBOX全选,取消全选,反选方法三
Aug 30 Javascript
jquery 的 $(&quot;#id&quot;).html() 无内容的解决方法
Jun 07 Javascript
为Javascript中的String对象添加去除左右空格的方法(示例代码)
Nov 30 Javascript
JavaScript中跨域调用Flash的方法
Aug 11 Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
Oct 16 Javascript
jquery实现瀑布流效果 jquery下拉加载新数据
Dec 12 Javascript
移动端界面的适配
Jan 11 Javascript
jQuery快速实现商品数量加减的方法
Feb 06 Javascript
webpack4 + react 搭建多页面应用示例
Aug 03 Javascript
详解JavaScript实现动态的轮播图效果
Apr 29 Javascript
vue+elementui 对话框取消 表单验证重置示例
Oct 29 Javascript
vue实现点击出现操作弹出框的示例
Nov 05 Javascript
jQGrid动态填充select下拉框的选项值(动态填充)
Nov 28 #Javascript
JS调用打印机功能简单示例
Nov 28 #Javascript
完全深入学习Bootstrap表单
Nov 28 #Javascript
EasyUI Combobox设置默认值 获取text的方法
Nov 28 #Javascript
Bootstrap选项卡动态切换效果
Nov 28 #Javascript
js简单正则验证汉字英文及下划线的方法
Nov 28 #Javascript
Bootstrap实现导航栏的2种方式
Nov 28 #Javascript
You might like
php结合ACCESS的跨库查询功能
2015/06/12 PHP
Yii2中datetime类的使用
2016/12/17 PHP
Google 静态地图API实现代码
2010/11/19 Javascript
使用Jquery Aajx访问WCF服务(GET、POST、PUT、DELETE)
2012/03/16 Javascript
javascript设计模式 封装和信息隐藏(上)
2012/07/24 Javascript
Extjs4中的分页应用结合前后台
2013/12/13 Javascript
javascript类型转换使用方法
2014/02/08 Javascript
js实现刷新iframe的方法汇总
2015/04/27 Javascript
Node.js操作Firebird数据库教程
2016/03/04 Javascript
Angular.js与node.js项目里用cookie校验账户登录详解
2017/02/22 Javascript
vue绑定设置属性的多种方式(5)
2017/08/16 Javascript
JS实现div模块的截图并下载功能
2017/10/17 Javascript
js技巧之十几行的代码实现vue.watch代码
2018/06/09 Javascript
vee-validate vue 2.0自定义表单验证的实例
2018/08/28 Javascript
layui--js控制switch的切换方法
2019/09/03 Javascript
在vue中高德地图引入和轨迹的绘制的实现
2019/10/11 Javascript
压缩Vue.js打包后的体积方法总结(Vue.js打包后体积过大问题)
2020/02/03 Javascript
python 转换 Javascript %u 字符串为python unicode的代码
2016/09/06 Python
详解Python开发中如何使用Hook技巧
2017/11/01 Python
Python数据结构与算法之图的最短路径(Dijkstra算法)完整实例
2017/12/12 Python
Django框架封装外部函数示例
2019/05/28 Python
Python语法垃圾回收机制原理解析
2020/03/25 Python
解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题
2020/04/20 Python
Python Selenium操作Cookie的实例方法
2021/02/28 Python
需要知道的CSS3动画技术
2010/01/01 HTML / CSS
html5 canvas实现给图片添加平铺水印
2019/08/20 HTML / CSS
香港莎莎官网Sasa.com:亚洲著名国际化妆品商城
2019/11/10 全球购物
药剂专业学生求职信范文
2013/12/28 职场文书
高中考试作弊检讨书
2014/01/14 职场文书
考察邀请函范文
2015/01/31 职场文书
教师辞职书范文
2015/02/26 职场文书
体检通知范文
2015/04/21 职场文书
环保主题班会教案
2015/08/13 职场文书
银行求职信范文
2019/05/13 职场文书
idea以任意顺序debug多线程程序的具体用法
2021/08/30 Java/Android
python实现简单石头剪刀布游戏
2021/10/24 Python