简单实现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 相关文章推荐
javascript面向对象入门基础详细介绍
Sep 05 Javascript
用jquery实现点击栏目背景色改变
Dec 10 Javascript
js获取url参数值的两种方式
Sep 10 Javascript
Jquery获取当前城市的天气信息
Aug 05 Javascript
详解AngularJs中$sce与$sceDelegate上下文转义服务
Sep 21 Javascript
js实现目录链接,内容跟着目录滚动显示的简单实例
Oct 15 Javascript
详解为Bootstrap Modal添加拖拽的方法
Jan 05 Javascript
jQuery中内容过滤器简单用法示例
Mar 31 jQuery
JavaScript设计模式之原型模式分析【ES5与ES6】
Jul 26 Javascript
vue2配置scss的方法步骤
Jun 06 Javascript
ant design实现圈选功能
Dec 17 Javascript
微信小程序实现拨打电话功能的示例代码
Jun 28 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提取中文首字母
2008/04/09 PHP
php下intval()和(int)转换使用与区别
2008/07/18 PHP
php error_log 函数的使用
2009/04/13 PHP
PHP file_get_contents 函数超时的几种解决方法
2009/07/30 PHP
PHP Try-catch 语句使用技巧
2016/02/28 PHP
详解PHP中cookie和session的区别及cookie和session用法小结
2016/06/12 PHP
PHP输出多个元素的排列或组合的方法
2017/03/14 PHP
jquery实用代码片段集合
2010/08/12 Javascript
js中return false(阻止)的用法
2013/08/14 Javascript
使用firebug进行调试javascript的示例
2013/12/16 Javascript
jQuery中focus事件用法实例
2014/12/26 Javascript
分享9个最好用的JavaScript开发工具和代码编辑器
2015/03/24 Javascript
JS实现漂亮的时间选择框效果
2016/08/20 Javascript
Nodejs+Socket.io实现通讯实例代码
2017/02/13 NodeJs
$.browser.msie 为空或不是对象问题的多种解决方法
2017/03/19 Javascript
详解webpack+angular2开发环境搭建
2017/06/28 Javascript
利用babel将es6语法转es5的简单示例
2017/12/01 Javascript
Vue.js分页组件实现:diVuePagination的使用详解
2018/01/10 Javascript
js实现鼠标点击页面弹出自定义文字效果
2019/12/24 Javascript
python统计一个文本中重复行数的方法
2014/11/19 Python
python实现带验证码网站的自动登陆实现代码
2015/01/12 Python
Python 实现毫秒级淘宝抢购脚本的示例代码
2019/09/16 Python
Python3爬虫里关于Splash负载均衡配置详解
2020/07/10 Python
Scrapy爬虫文件批量运行的实现
2020/09/30 Python
Melissa鞋英国官方网站:Nonnon
2019/05/01 全球购物
一套SQL笔试题
2016/08/14 面试题
Linux Interview Questions For software testers
2013/05/17 面试题
百度软件工程师职位
2013/02/14 面试题
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
2016/03/12 面试题
销售业务实习自我鉴定
2013/09/23 职场文书
工地资料员岗位职责
2013/12/31 职场文书
高一学生评语大全
2014/04/25 职场文书
田径运动会通讯稿
2014/09/13 职场文书
党建工作汇报材料
2014/12/24 职场文书
八年级物理教学反思
2016/02/19 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server