javascript判断css3动画结束 css3动画结束的回调函数


Posted in Javascript onMarch 10, 2015

css3 的时代,css3--动画 一切皆有可能;

javascript判断css3动画结束 css3动画结束的回调函数

传统的js 可以通过回调函数判断动画是否结束;即使是采用CSS技术生成动画效果,JavaScript仍然能捕获动画或变换的结束事件;

transitionend事件和animationend事件标准的浏览器事件,但在WebKit浏览器里你仍然需要使用webkit前缀,所以,我们不得不根据各种浏览器分别检测事件

var transitions = {

       'transition':'transitionend',

       'OTransition':'oTransitionEnd',

       'MozTransition':'transitionend',

       'WebkitTransition':'webkitTransitionEnd'

     }

下面附上源代码:

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>suface   js判断css动画是否结束</title>

</head>

<body>

<p>一旦动画或变换结束,回调函数就会触发。不再需要大型类库支持。<br> </p>

<style type="text/css">

.sample {

width: 200px;

height: 200px;

border: 1px solid green;

background: lightgreen;

opacity: 1;

margin-bottom: 20px;

transition-property: opacity;

/*transition-duration: .5s;*/

transition-duration:3s;

}

  .sample.hide {

opacity: 0;

}

</style>

<div class="sample">css3动画过度慢慢隐藏(transition-duration:3s;)</div>

<p><button onclick="this.style.display='none';startFade();">慢慢消退,检测结束事件</button></p>

<script>             

                   (function() {

   var e = document.getElementsByClassName('sample')[0];

   function whichTransitionEvent(){

       var t;

       var el = document.createElement('fakeelement');

       var transitions = {

         'transition':'transitionend',

         'OTransition':'oTransitionEnd',

         'MozTransition':'transitionend',

         'WebkitTransition':'webkitTransitionEnd'

       }

       for(t in transitions){

           if( el.style[t] !== undefined ){

               return transitions[t];

           }

       }

   }

   var transitionEvent = whichTransitionEvent();

   transitionEvent && e.addEventListener(transitionEvent, function() {

    alert('css3运动结束!我是回调函数,没有使用第三方类库!');

   });

   startFade = function() {

    e.className+= ' hide';

   }

  })();<br></script>

</body>

</html>

以上就是本文所述的关于javascript判断CSS3动画结束的方法,希望大家能够喜欢

Javascript 相关文章推荐
Javascript 验证上传图片大小[客户端]
Aug 01 Javascript
Mootools 1.2教程 正则表达式
Sep 15 Javascript
JavaScript.The.Good.Parts阅读笔记(二)作用域&amp;闭包&amp;减缓全局空间污染
Nov 16 Javascript
javascript拖拽应用实例
Mar 25 Javascript
Vue.js每天必学之组件与组件间的通信
Sep 08 Javascript
jquery动态添加文本并获取值的方法
Oct 12 Javascript
深入理解Javascript中的作用域链和闭包
Apr 25 Javascript
vue移动端裁剪图片结合插件Cropper的使用实例代码
Jul 10 Javascript
浅谈react-router@4.0 使用方法和源码分析
Jun 04 Javascript
bootstrap实现嵌套模态框的实例代码
Jan 10 Javascript
在博客园博文中添加自定义右键菜单的方法详解
Feb 05 Javascript
vue实现匀速轮播效果
Jun 29 Javascript
jQuery实现表格颜色交替显示的方法
Mar 09 #Javascript
jQuery实现个性翻牌效果导航菜单的方法
Mar 09 #Javascript
jQuery实现可用于博客的动态滑动菜单
Mar 09 #Javascript
JQuery操作元素的css样式
Mar 09 #Javascript
jQuery实现仿美橙互联两级导航菜单的方法
Mar 09 #Javascript
jquery获取及设置outerhtml的方法
Mar 09 #Javascript
jQuery给动态添加的元素绑定事件的方法
Mar 09 #Javascript
You might like
Javascript 判断函数类型完美解决方案
2009/09/02 Javascript
关于jquery append() html时的小问题的解决方法
2010/12/16 Javascript
jquery实现的带缩略图的焦点图片切换(自动播放/响应鼠标动作)
2013/01/23 Javascript
JS中不为人知的五种声明Number的方式简要概述
2013/02/22 Javascript
JavaScript通过事件代理高亮显示表格行的方法
2015/05/27 Javascript
js实现仿百度风云榜可重复多次调用的TAB切换选项卡效果
2015/08/31 Javascript
10个很棒的jQuery代码片段
2015/09/24 Javascript
JavaScript实现的伸展收缩型菜单代码
2015/10/14 Javascript
jquery+json实现动态商品内容展示的方法
2016/01/14 Javascript
jQuery实现图片加载完成后改变图片大小的方法
2016/03/29 Javascript
Javascript获取随机数的实现方法
2016/06/22 Javascript
Canvas 制作动态进度加载水球详解及实例代码
2016/12/09 Javascript
JS仿Base.js实现的继承示例
2017/04/07 Javascript
JavaScript实现淘宝京东6位数字支付密码效果
2018/08/18 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
javascript导出csv文件(excel)的方法示例
2019/08/25 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
微信小程序文章列表功能完整实例
2020/06/03 Javascript
[01:57]2018年度DOTA2最具潜力解说-完美盛典
2018/12/16 DOTA
Python使用QQ邮箱发送Email的方法实例
2017/02/09 Python
对pandas的dataframe绘图并保存的实现方法
2017/08/05 Python
Python使用ConfigParser模块操作配置文件的方法
2018/06/29 Python
python单例模式实例解析
2018/08/28 Python
对python实现二维函数高次拟合的示例详解
2018/12/29 Python
在Pycharm中设置默认自动换行的方法
2019/01/16 Python
Python和Java的语法对比分析语法简洁上python的确完美胜出
2019/05/10 Python
巴西葡萄酒商店:Divvino
2020/02/22 全球购物
给定一个时间点,希望得到其他时间点
2013/11/07 面试题
总经理秘书的岗位职责
2013/12/27 职场文书
自动化专业职业生涯规划书范文
2014/01/16 职场文书
实习评语大全
2014/04/26 职场文书
本科毕业生求职信
2014/06/15 职场文书
班子查摆四风个人对照检查材料思想汇报
2014/10/04 职场文书
社区志愿服务活动感想
2015/08/07 职场文书
python通过函数名调用函数的几种方法总结
2021/06/07 Python
MySQL优化及索引解析
2022/03/17 MySQL