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 相关文章推荐
改进:论坛UBB代码自动插入方式
Dec 22 Javascript
JavaScript 事件属性绑定带参数的函数
Mar 13 Javascript
Jquery替换已存在于element上的event的方法
Mar 09 Javascript
jquery实现图片左右间隔滚动特效(可自动播放)
May 08 Javascript
js 为label标签和div标签赋值的方法
Aug 08 Javascript
avalonjs制作响应式瀑布流特效
May 06 Javascript
js中的关联数组与普通数组详解
Jul 27 Javascript
HTML5实现微信拍摄上传照片功能
Apr 21 Javascript
JavaScript实现购物车基本功能
Jul 21 Javascript
react中的ajax封装实例详解
Oct 17 Javascript
JS笛卡尔积算法与多重数组笛卡尔积实现方法示例
Dec 01 Javascript
vue实现简单loading进度条
Jun 06 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
php empty函数 使用说明
2009/08/10 PHP
Thinkphp搭建包括JS多语言的多语言项目实现方法
2014/11/24 PHP
PHP中关键字interface和implements详解
2017/06/14 PHP
判断页面是关闭还是刷新的js代码
2007/01/28 Javascript
自己开发Dojo的建议框架
2008/09/24 Javascript
jquery 批量上传图片实现代码
2010/01/28 Javascript
JavaScript 实现简单的倒计时弹窗DEMO附图
2014/03/05 Javascript
jQuery动画与特效详解
2015/02/01 Javascript
JavaScript 里的类数组对象
2015/04/08 Javascript
javascript将DOM节点添加到文档的方法实例分析
2015/08/04 Javascript
第一次接触神奇的Bootstrap菜单和导航
2016/08/01 Javascript
Bootstrap的popover(弹出框)在append后弹不出(失效)
2017/02/27 Javascript
js实现多行文本框统计剩余字数功能
2017/03/28 Javascript
js 用于检测类数组对象的函数方法
2017/05/02 Javascript
jQuery手风琴的简单制作
2017/05/12 jQuery
jQuery日期范围选择器附源码下载
2017/05/23 jQuery
vue-cli 自定义指令directive 添加验证滑块示例
2017/10/19 Javascript
angularjs实现时间轴效果的示例代码
2017/11/29 Javascript
vue+element-ui集成随机验证码+用户名+密码的form表单验证功能
2018/08/05 Javascript
iView-admin 动态路由问题的解决方法
2018/10/03 Javascript
原生js实现3D轮播图
2020/03/21 Javascript
详解Vue template 如何支持多个根结点
2020/02/10 Javascript
解决ant Design中this.props.form.validateFields未执行的问题
2020/10/27 Javascript
Python解析excel文件存入sqlite数据库的方法
2016/11/15 Python
Windows系统下多版本pip的共存问题详解
2017/10/10 Python
Python面向对象之继承代码详解
2018/01/29 Python
PyCharm 2020.1版安装破解注册码永久激活(激活到2089年)
2020/09/24 Python
Selenium执行完毕未关闭chromedriver/geckodriver进程的解决办法(java版+python版)
2020/12/07 Python
俄罗斯旅游网站:Tripadvisor俄罗斯
2017/03/21 全球购物
签约仪式主持词
2014/03/19 职场文书
北京奥运会主题口号
2014/06/13 职场文书
教师对照四风自我剖析材料
2014/09/30 职场文书
特岗教师个人总结
2015/02/10 职场文书
800字作文之大雪
2019/12/04 职场文书
iPhone13再次曝光
2021/04/15 数码科技
MySQL中InnoDB存储引擎的锁的基本使用教程
2021/05/26 MySQL