浅谈CSS3动画的回调处理

  发布时间:2016-07-21 10:05:01   作者:佚名   我要评论
下面小编就为大家带来一篇浅谈CSS3动画的回调处理。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

我们在做js动画的时候,很多时候都需要做回调处理,如在一个动画完成后触发一个事件、一个动画完成后执行另外一个动画等等,但在使用CSS3动画时能不能捕获到运动的状态做回调处理呢?

CSS3动画也是可以做回调处理的,这里分为两个属性,一个是transition[w3c文档],另外一个是animation[w3c文档]。

1、transition

对于transition,可以监听transitionend事件,当动画完成时触发,可以这样使用:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE html>  
  2. <html lang="en">  
  3. <head>  
  4.     <meta charset="UTF-8">  
  5.     <title>css3-transitionend - BeyondWeb</title>  
  6.     <style>  
  7.         * {margin: 0; padding: 0;}   
  8.         .rect {   
  9.             width: 100px;   
  10.             height: 100px;   
  11.             background-color: #f80;   
  12.             -webkit-transition: all .5s;   
  13.         }   
  14.     </style>  
  15.     <script>  
  16.         window.onload = function () {   
  17.             var _rect = document.querySelector('.rect');   
  18.             _rect.onclick = function () {   
  19.                 _rect.style.webkitTransform = 'translateX(300px)';   
  20.             }   
  21.   
  22.             _rect.addEventListener('webkitTransitionEnd', function () {   
  23.                 alert('动画执行完毕!');   
  24.                 // callback here   
  25.             }, false);   
  26.         }   
  27.     </script>  
  28. </head>  
  29. <body>  
  30.     <div class="rect"></div>  
  31. </body>  
  32. </html>  

2、animation

对于animation我们可以监听animationend事件,示例代码如下:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE html>  
  2. <html lang="en">  
  3. <head>  
  4.     <meta charset="UTF-8">  
  5.     <title>css3-animationend - BeyondWeb</title>  
  6.     <style>  
  7.         * {margin: 0; padding: 0;}   
  8.         .rect {   
  9.             position: relative;   
  10.             width: 100px;   
  11.             height: 100px;   
  12.             background-color: #f80;   
  13.         }   
  14.   
  15.         @-webkit-keyframes move {   
  16.             from {   
  17.                 -webkit-transform: rotate(0);   
  18.             }   
  19.             to {   
  20.                 -webkit-transform: rotate(360deg);   
  21.             }   
  22.         }   
  23.     </style>  
  24.     <script>  
  25.         window.onload = function () {   
  26.             var _rect = document.querySelector('.rect');   
  27.             _rect.onclick = function () {   
  28.                 _rect.style.webkitAnimation = 'move 3s';   
  29.             }   
  30.   
  31.             _rect.addEventListener('webkitAnimationEnd', function () {   
  32.                 alert('动画执行完毕!');   
  33.                 // callback here   
  34.             }, false);   
  35.         }   
  36.     </script>  
  37. </head>  
  38. <body>  
  39.     <div class="rect"></div>  
  40. </body>  
  41. </html>  

就是关于CSS3动画回调处理的一些内容,最近在做H5页面时用到了,总结一下。

以上这篇浅谈CSS3动画的回调处理就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

原文地址:http://www.cnblogs.com/androidshouce/archive/2016/07/21/5690438.html

相关文章

  • 纯css3实现的3D方块翻转动画特效源码

    这是一款纯css3实现的3D方块翻转动画特效源码。画面中心的立方体方块自身做翻转运动,方块外围的圆环也随着方块的转动做旋转运动,整体效果流畅自然。该特效动画采用纯css3
    2016-07-22
  • 纯css3实现的3D图片立方体旋转动画特效源码

    这是一款使用纯css3实现的3D图片立方体旋转动画特效源码。外层图片构成大立方体包裹内层的小图片立方体同步旋转,鼠标滑过立方体可呈现出外层立方体炸开的效果。该动画特效
    2016-07-21
  • CSS3实现的绵羊奔跑动画特效源码

    是一段实现了多只奔跑的绵羊效果的代码,可以用做背景图,本段代码适应于所有网页使用,有兴趣的朋友们可以前来下载使用
    2016-07-20
  • CSS3鼠标滑过图片标题遮罩动画特效源码 8种

    本源码是一组使用CSS3制作的超酷鼠标滑过图片标题动画特效的代码。共有8种不同的鼠标滑过效果,能制作遮罩层的各种动画特效
    2016-07-18
  • 纯CSS3绘制打火机动画火焰效果

    这篇文章主要为大家详细介绍了纯CSS3绘制打火机动画火焰效果的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-07-18
  • css3动画效果小结(推荐)

    下面小编就为大家带来一篇css3动画效果小结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-25

最新评论