• CSS3动画效果——js调用css动画属性并回调处理详解


    http://www.jb51.net/css/258407.html

    这篇文章主要详细介绍了CSS3动画效果回调处理,需要的朋友可以参考下

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

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

    1、transition

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

    代码如下:


    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>css3-transitionend - BeyondWeb</title>
    <style>
    * {margin: 0; padding: 0;}
    .rect {
    100px;
    height: 100px;
    background-color: #f80;
    -webkit-transition: all .5s;
    }
    </style>
    <script>
    window.onload = function () {
    var _rect = document.querySelector('.rect');
    _rect.onclick = function () {
    _rect.style.webkitTransform = 'translateX(300px)';
    }</p> <p> _rect.addEventListener('webkitTransitionEnd', function () {
    alert('动画执行完毕!');
    // callback here
    }, false);
    }
    </script>
    </head>
    <body>
    <div class="rect"></div>
    </body>
    </html>

    2、animation

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

    复制代码
    代码如下:

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>css3-animationend - BeyondWeb</title>
    <style>
    * {margin: 0; padding: 0;}
    .rect {
    position: relative;
    100px;
    height: 100px;
    background-color: #f80;
    }</p> <p> @-webkit-keyframes move {
    from {
    -webkit-transform: rotate(0);
    }
    to {
    -webkit-transform: rotate(360deg);
    }
    }
    </style>
    <script>
    window.onload = function () {
    var _rect = document.querySelector('.rect');
    _rect.onclick = function () {
    _rect.style.webkitAnimation = 'move 3s';
    }</p> <p> _rect.addEventListener('webkitAnimationEnd', function () {
    alert('动画执行完毕!');
    // callback here
    }, false);
    }
    </script>
    </head>
    <body>
    <div class="rect"></div>
    </body>
    </html>

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

  • 相关阅读:
    xps插入图片
    xps文件的基本操作
    大家注意:升级 win8.1 火狐浏览器 谷歌浏览器 搜狗五笔输入法 都不能用啦
    CF4C_Registration system 题解
    CF1B_Spreadsheets 题解
    CSP-J/S 初赛知识点整理
    Nodejs在centos下的安装
    sqlserver2012 表分区
    adb unknown host service 这个问题的解决,转载
    char和nchar,varchar和nvarchar的区别(转载)
  • 原文地址:https://www.cnblogs.com/koleyang/p/5478104.html
Copyright © 2020-2023  润新知