jquery+css实现动感的图片切换效果


Posted in Javascript onNovember 25, 2015

本文实例讲述了jquery+css实现动感的图片切换效果代码。分享给大家供大家参考。具体如下:
运行效果截图如下:

jquery+css实现动感的图片切换效果

具体代码如下:

基本思路:定义一个数组存放需要展示的图片,接着当单击图片时删除zoomIn类,添加fadeOutRight类,实现实图右移并消失,记数器加1(用于调用下一张图片),当图片删除500毫秒后判断图片是不是最后一张,如果是,就把记数器调为0,从第一张图片开始,删除图片代码,接着创建一张新的图片代码,并把src设为下一张图片,同时加上缩放动画样式类animated zoomIn,让图片实现动画显示,之后把新建的图片代码插上p元素之前。

首选引入CSS动画文件与jquery库

<link rel="stylesheet" href="css/animate.min.css"/>
<script type="text/javascript" src="js/jquery/1.11.1/jquery.min.js"></script>

构建简单的html

<div class="container">
 <div class="center animated">
  <h1>Image Animation with A Single Img, CSS3 & some jQuery</h1>
  <img class="animated" src="images/island_1x.png" alt=""/>
   <p>
    <a target="_blank" href="#">三水点靠木</a>,
  </p>
 </div>
</div>

再加上一些CSS,这里随意,请根据自己的项目来调整

.container {
   width: 100vw;
   height: 100vh;
   background-color: #fff;
   position: absolute;
  }
 
  .center {
   width: 600px;
   margin-left: auto;
   margin-right: auto;
   position: relative;
   top: 50%;
   transform: translateY(-50%);
   text-align: center;
 
   background-image: url(images/banana.png);
   background-position: -10000px,-10000px;
   background-repeat: no-repeat;
  }
 
  .center h1 {
   margin: 0px;
   padding: 0px;
   text-align: center;
   margin-bottom: 50px;
   font-size: 18px;
   text-transform: uppercase;
  }
 
  .center p{
   padding-top:50px;
   text-align: center;
   color: #ccc;
   font-size: 12px;
 
  }
 
  .center p a{
   text-decoration: none;
   color: inherit;
  }
 
  .center p a:hover{
   color:#222;
  }
 
  .center img{
   cursor: pointer;
  }

基本的CSS定位整个页面,动画不受以上的CSS影响。
写入JS实现动画效要

var imgs=[ //定义存放图片路径的数组
   "images/island_1x.png",
   "images/banana.png",
   "images/rescued-illos_1x.png",
   "images/rivalry_1x.png",
   "images/sir_crags_a_lot_1x.png",
   "images/sf-cryptids_1x.png",
   "images/db_space_1x.png",
   "images/xmas1_1x.png"
 ];
 var counter =0; //图片的记数器
 $(document).ready(function () {
  $(".center").on("click","img",function(){ //定义.center单击图片事件
   $(this).removeClass("zoomIn").addClass("fadeOutRight"); //删除单击图片的zoomIn类,添加fadeOutRight类
   counter++; //记数器加1
   setTimeout(function(){ //500毫秒后执行此方法
    if(counter==imgs.length) counter=0; //如果到了最后一张图片则返回第一张
    $(".center img").remove(); //删除图片
    $("<img/>").attr("src",imgs[counter]).addClass("animated zoomIn").insertBefore($(".center p"));
    //拼接成下一张图片并加上缩放动画样式类animated zoomIn,最后添加上.center p元素前
    if(imgs[counter+1]!=undefined) $(".center").css("backgroundImage","url("+imgs[counter+1]+")")
    //如果下一张图片没有定义,刚为.center元素的背影图片改为下一张图片(不明白加此行代码的用意,感觉没意义。。。)
   },500);
  });
 
 });

源码下载:jquery+css实现动感的图片切换效果源码

以上就是jquery结合css实现动感的图片切换效果,分享的代码很详细,还提供了代码的基本思路,希望大家喜欢,并且可以学以致用。

Javascript 相关文章推荐
extJs 下拉框联动实现代码
Apr 09 Javascript
JavaScript加强之自定义callback示例
Sep 21 Javascript
javascript 实现子父窗体互相传值的简单实例
Feb 17 Javascript
利用原生js和jQuery实现单选框的勾选和取消操作的方法
Sep 04 Javascript
javascript函数中的3个高级技巧
Sep 22 Javascript
解决jquery appaend元素中id绑定事件失效的问题
Sep 12 jQuery
JS中数据结构与算法---排序算法(Sort Algorithm)实例详解
Jun 17 Javascript
Vue 刷新当前路由的实现代码
Sep 26 Javascript
node.js express框架实现文件上传与下载功能实例详解
Oct 15 Javascript
vue中的过滤器及其时间格式化问题
Apr 09 Javascript
如何使用jQuery操作Cookies方法解析
Sep 08 jQuery
原生js实现简单轮播图
Oct 26 Javascript
基于jQuery实现拖拽图标到回收站并删除功能
Nov 25 #Javascript
基于jquery实现页面滚动时顶部导航显示隐藏
Apr 20 #Javascript
Prototype框架详解
Nov 25 #Javascript
谈谈js中的prototype及prototype属性解释和常用方法
Nov 25 #Javascript
Bootstrap每天必学之下拉菜单
Nov 25 #Javascript
使用Javascript写的2048小游戏
Nov 25 #Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
Nov 25 #Javascript
You might like
eWebEditor v3.8 商业完整版 (PHP)
2006/12/06 PHP
php 遍历数据表数据并列表横向排列的代码
2009/09/05 PHP
php中怎么搜索相关联数组键值及获取之
2013/10/17 PHP
PHP二维数组排序的3种方法和自定义函数分享
2014/04/09 PHP
浅谈json_encode用法
2015/03/05 PHP
用Juery网页选项卡实现代码
2011/06/13 Javascript
js与jquery回车提交的方法
2015/02/03 Javascript
javascript弹出带文字信息的提示框效果
2016/07/19 Javascript
解决wx.onMenuShareTimeline出现的问题
2016/08/16 Javascript
Angularjs中controller的三种写法分享
2016/09/21 Javascript
vue2项目使用sass的示例代码
2017/06/28 Javascript
Webpack 之 babel-loader文件预处理器详解
2018/03/23 Javascript
vue 音乐App QQ音乐搜索列表最新接口跨域设置方法
2018/09/25 Javascript
详解javascript 变量提升(Hoisting)
2019/03/12 Javascript
Python中用Spark模块的使用教程
2015/04/13 Python
Python的几个高级语法概念浅析(lambda表达式闭包装饰器)
2016/05/28 Python
python对json的相关操作实例详解
2017/01/04 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
2018/01/10 Python
pandas求两个表格不相交的集合方法
2018/12/08 Python
Python文件如何引入?详解引入Python文件步骤
2018/12/10 Python
解决安装pycharm后不能执行python脚本的问题
2019/01/19 Python
python smtplib发送多个email联系人的实现
2020/10/09 Python
python中random模块详解
2021/03/01 Python
北美领先的牛仔品牌:Buffalo David Bitton
2017/05/22 全球购物
华美博弈C/VC工程师笔试试题
2012/07/16 面试题
工作自我评价怎么写
2014/01/29 职场文书
詹天佑教学反思
2014/04/30 职场文书
产品包装策划方案
2014/05/18 职场文书
幼儿教师师德承诺书
2014/05/23 职场文书
中文专业毕业生自荐信
2014/05/24 职场文书
趣味运动会策划方案
2014/06/02 职场文书
HR求职自荐信范文
2014/06/21 职场文书
区政府领导班子个人对照检查材料
2014/09/25 职场文书
党员年终个人总结
2015/02/14 职场文书
Java处理延时任务的常用几种解决方案
2022/06/01 Java/Android
Python如何加载模型并查看网络
2022/07/15 Python