简单实现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 相关文章推荐
JS 巧妙获取剪贴板数据 Excel数据的粘贴
Jul 09 Javascript
Script的加载方法小结
Jan 12 Javascript
Javascript 闭包引起的IE内存泄露分析
May 23 Javascript
JS+CSS模拟可以无刷新显示内容的留言板实例
Mar 03 Javascript
js实现漂浮回顶部按钮实例
May 06 Javascript
JavaScript调用传递变量参数的相关问题及解决办法
Nov 01 Javascript
JS使用eval解析JSON的注意事项分析
Nov 14 Javascript
js鼠标点击图片切换效果实现代码
Nov 19 Javascript
jquery实现tab选项卡切换效果(悬停、下方横线动画位移)
May 05 jQuery
JQuery和html+css实现带小圆点和左右按钮的轮播图实例
Jul 22 jQuery
element-ui表格数据转换的示例代码
Aug 24 Javascript
微信小程序引入VANT组件的方法步骤
Sep 19 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文件上传的简单实例
2013/10/19 PHP
Yii清理缓存的方法
2016/01/06 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
2016/10/21 PHP
Zend Framework框架实现类似Google搜索分页效果
2016/11/25 PHP
php 判断IP为有效IP地址的方法
2018/01/28 PHP
为Yahoo! UI Extensions Grid增加内置的可编辑器
2007/03/10 Javascript
Javascript打印网页部分内容的脚本
2008/11/17 Javascript
一个简单的Ext.XTemplate的实例代码
2012/03/18 Javascript
js使用栈来实现10进制转8进制与取除数及余数
2014/06/11 Javascript
JavaScript中Function()函数的使用教程
2015/06/04 Javascript
PHP结合jQuery实现的评论顶、踩功能
2015/07/22 Javascript
js实现带圆角的两级导航菜单效果代码
2015/08/24 Javascript
超详细的javascript数组方法汇总
2015/11/21 Javascript
Web前端开发工具——bower依赖包管理工具
2016/03/29 Javascript
微信小程序  wx.request合法域名配置详解
2016/11/23 Javascript
原生JS实现图片懒加载(lazyload)实例
2017/06/13 Javascript
Node.js学习之TCP/IP数据通讯(实例讲解)
2017/10/11 Javascript
vue给input file绑定函数获取当前上传的对象完美实现方法
2017/12/15 Javascript
JS实现的哈夫曼编码示例【原始版与修改版】
2018/04/22 Javascript
vue中post请求以a=a&amp;b=b 的格式写遇到的问题
2018/04/27 Javascript
vue项目base64字符串转图片的实现代码
2018/07/13 Javascript
vue中子组件传递数据给父组件的讲解
2019/01/27 Javascript
操作按钮悬浮固定在微信小程序底部的实现代码
2019/08/02 Javascript
layui实现checkbox的目录树tree的例子
2019/09/12 Javascript
如何利用JS将手机号中间四位变成*号
2020/09/29 Javascript
python使用Flask操作mysql实现登录功能
2018/05/14 Python
使用Python如何测试InnoDB与MyISAM的读写性能
2018/09/18 Python
python实现给微信指定好友定时发送消息
2019/04/29 Python
简单了解python的break、continue、pass
2019/07/08 Python
Ubuntu权限不足无法创建文件夹解决方案
2020/11/14 Python
全网最详细的PyCharm+Anaconda的安装过程图解
2021/01/25 Python
暑期培训随笔感言
2014/03/10 职场文书
节能减排倡议书
2014/04/15 职场文书
2014银行领导班子群众路线对照检查材料思想汇报
2014/09/17 职场文书
反腐倡廉观后感
2015/06/08 职场文书
matplotlib之pyplot模块实现添加子图subplot的使用
2021/04/25 Python