简单实现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
原生Js实现元素渐隐/渐现(原理为修改元素的css透明度)
Jun 24 Javascript
JavaScript使用DeviceOne开发实战(二) 生成调试安装包
Dec 01 Javascript
Knockoutjs 学习系列(一)ko初体验
Jun 07 Javascript
JavaScript中 ES6 generator数据类型详解
Aug 11 Javascript
canvas实现十二星座星空图
Feb 14 Javascript
vuejs点击class变化的实例
Sep 05 Javascript
开发中常用的25个JavaScript单行代码(小结)
Jun 28 Javascript
jquery.pager.js分页实现详解
Jul 29 jQuery
IE11下CKEditor在Bootstrap Modal中下拉问题的解决
Sep 25 Javascript
怎么理解wx.navigateTo的events参数使用详情
May 18 Javascript
基于JavaScript实现轮播图效果
Jan 02 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清除和销毁session的方法分析
2015/03/19 PHP
php resizeimage 部分jpg文件 生成缩略图失败的原因分析及解决办法
2016/03/23 PHP
php操作路径的经典方法(必看篇)
2016/10/04 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
基于jquery的横向滚动条(滑动条)
2011/02/24 Javascript
JavaScript实现页面实时显示当前时间的简单实例
2013/07/20 Javascript
jQuery Form 页面表单提交的小例子
2013/11/15 Javascript
jquery遍历checkbox的注意事项说明
2014/02/21 Javascript
js简单实现表单中点击按钮动态增加输入框数量的方法
2015/08/18 Javascript
jquery实现图片预加载
2015/12/25 Javascript
Angularjs手动解析表达式($parse)
2016/10/12 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
原生JS仿QQ阅读点击展开、收起效果
2017/03/08 Javascript
Vue指令的钩子函数使用方法
2017/03/20 Javascript
jQuery加密密码到cookie的实现代码
2017/04/18 jQuery
Node实战之不同环境下配置文件使用教程
2018/01/02 Javascript
vue登录页面cookie的使用及页面跳转代码
2019/07/10 Javascript
vue 组件内获取actions的response方式
2019/11/08 Javascript
vue 实现在同一界面实现组件的动态添加和删除功能
2020/06/16 Javascript
Vue实现穿梭框效果
2020/09/30 Javascript
Javascript实现贪吃蛇小游戏(含详细注释)
2020/10/23 Javascript
Python中变量交换的例子
2014/08/25 Python
Python实现国外赌场热门游戏Craps(双骰子)
2015/03/31 Python
PyTorch的深度学习入门之PyTorch安装和配置
2019/06/27 Python
Django 全局的static和templates的使用详解
2019/07/19 Python
基于python爬取有道翻译过程图解
2020/03/31 Python
Docker如何部署Python项目的实现详解
2020/10/26 Python
解决pycharm 格式报错tabs和space不一致问题
2021/02/26 Python
优秀共产党员先进事迹
2014/01/27 职场文书
料理师求职信
2014/01/30 职场文书
内蒙古鄂尔多斯市市长寄语
2014/04/10 职场文书
赔偿协议书
2015/01/27 职场文书
小学生作文写作技巧100例,非常实用!
2019/07/08 职场文书
原生JavaScript实现简单五子棋游戏
2021/06/28 Javascript
《艾尔登法环》Boss腐烂树灵很有可能是《黑暗之魂3》的一个废案
2022/04/11 其他游戏
SpringBoot使用ip2region获取地理位置信息的方法
2022/06/21 Java/Android