简单实现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的message插件实现右下角弹出消息框
Jan 11 Javascript
关于javascript中的typeof和instanceof介绍
Dec 04 Javascript
jquery ajax提交整个表单元素的快捷办法
Mar 27 Javascript
js克隆对象、数组的常用方法介绍
Sep 26 Javascript
JS的encodeURI和java的URLDecoder.decode使用介绍
May 08 Javascript
详解jQuery移动页面开发中的ui-grid网格布局使用
Dec 03 Javascript
AngularJS中的包含详细介绍及实现示例
Jul 28 Javascript
jQuery leonaScroll 1.1 自定义滚动条插件(推荐)
Sep 17 Javascript
JS判断指定dom元素是否在屏幕内的方法实例
Jan 23 Javascript
AngularJS学习第一篇 AngularJS基础知识
Feb 13 Javascript
Vue中计算属性computed的示例解读
Jul 26 Javascript
在Swiper内如何制作CSS3动画效果示例代码
Dec 07 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
牡丹941资料
2021/03/01 无线电
Cannot modify header information错误解决方法
2008/10/08 PHP
WordPress中用于获取搜索表单的PHP函数使用解析
2016/01/05 PHP
PHP中类的自动加载的方法
2017/03/17 PHP
PHP实现上传图片到数据库并显示输出的方法
2018/05/31 PHP
jquery tools 系列 scrollable(2)
2009/09/06 Javascript
jquery遍历checkbox的注意事项说明
2014/02/21 Javascript
JavaScript onkeydown事件入门实例(键盘某个按键被按下)
2014/10/17 Javascript
网页从弹窗页面单选框传值至父页面代码分享
2015/09/29 Javascript
JS模态窗口返回值兼容问题的完美解决方法
2016/05/28 Javascript
Vue.js组件tree实现省市多级联动
2016/12/02 Javascript
JS常见疑难点分析之match,charAt,charCodeAt,map,search用法分析
2016/12/25 Javascript
浅谈js script标签中的预解析
2016/12/30 Javascript
微信小程序 在线支付功能的实现
2017/03/14 Javascript
vue实现商城购物车功能
2017/11/27 Javascript
javaScript字符串工具类StringUtils详解
2017/12/08 Javascript
angularJS自定义directive之带参方法传递详解
2018/10/09 Javascript
微信小程序中如何使用flyio封装网络请求
2019/07/03 Javascript
如何使用 vue-cli 创建模板项目
2020/11/19 Vue.js
Python生成随机验证码的两种方法
2015/12/22 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
浅谈Tensorflow模型的保存与恢复加载
2018/04/26 Python
python通过伪装头部数据抵抗反爬虫的实例
2018/05/07 Python
python读取TXT每行,并存到LIST中的方法
2018/10/26 Python
Django解决frame拒绝问题的方法
2020/12/18 Python
Html5 滚动穿透的方法
2019/05/13 HTML / CSS
Marriott国际:万豪国际酒店查询预订
2017/09/25 全球购物
保时捷设计:Porsche Design
2019/03/30 全球购物
环境工程求职简历的自我评价范文
2013/10/24 职场文书
营销与策划专业毕业生求职信
2013/11/01 职场文书
招股说明书范本
2014/05/06 职场文书
家长会标语
2014/06/24 职场文书
2015年妇幼保健工作总结
2015/05/19 职场文书
中职班主任培训心得体会
2016/01/07 职场文书
创业方案:赚钱的烧烤店该怎样做?
2019/07/05 职场文书
Java中CyclicBarrier和CountDownLatch的用法与区别
2021/08/23 Java/Android