JavaScript---动画框架

2018-11-25  本文已影响0人  AuglyXu

animate.css

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>21-animate基本使用</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        div{
            width: 100px;
            height: 100px;
            background: red;
            margin: 100px auto;
        }
        .animated.delay-1s {
            -webkit-animation-delay: 5s !important;
            animation-delay: 5s !important;
        }
    </style>
    <link rel="stylesheet" href="css/animate.css">
</head>
<body>
<div class="animated infinite flip delay-1s"></div>

Wow.js

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>22-wow基本使用</title>
    <link rel="stylesheet" href="css/animate.css">
    <script src="js/wow.js"></script>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box{
            width: 400px;
            height: 200px;
            border: 1px solid #000;
            margin: 100px auto;
        }
        .box>div{
            width: 200px;
            height: 200px;
            background: red;
        }
        .box>div:nth-child(2){
            background: blue;
        }
        .f-left{
            float: left;
        }
        .r-right{
            float: right;
        }
    </style>
</head>
<body>
<div class="box">
    <div class="f-left wow slideInLeft" data-wow-delay="2s"></div>
    <div class="r-right wow slideInRight" data-wow-iteration="3"></div>
</div>
<script>
    new WOW().init();
</script>
</body>
</html>
window.addEventListener('load', function (ev) {
        var wow = new WOW(
            {
                boxClass:     'test',      // 需要执行动画的元素的 class (default is wow)
                animateClass: 'animated', // animation.css 动画的 class (default is animated)
                offset:       600,          // 距离可视区域多少开始执行动画 (default is 0)
                mobile:       true,       // 是否在移动设备上执行动画 (default is true)
                live:         true,       // 异步加载的内容是否有效 (default is true)
                callback:     function(box) {
                    // 每次动画启动时都会触发回调
                    // 传入的参数是正在动画的DOM节点
                },
                scrollContainer: null // 滚动容器选择器,默认使用窗口
            }
        );
        wow.init();
    });

scrollReveal

 var sReveal = ScrollReveal();
    sReveal.reveal('做动画的选择器', {
        reset: true, // 重置动画, 开启滚动时往返都有动画, 默认只有向下滚动有动画
        duration: 3000, // 动画持续的时间
        delay: 0, // 动画延迟时间
        rotate: {x: 0, y: 0, z: 45}, // 指定过渡的角度
        opacity: 0.2, // 初始化透明度
        scale: 0.8, // 初始化缩放比例
        distance: "500px", // 初始化默认的偏移位
        origin: "bottom", // 初始化默认偏移位的方向
        easing: "ease-in-out", // 指定动画的运动方式(匀速/缓动)
        beforeReveal: function () {
            // 动画开始之前的回调
            // console.log("动画开始");
        },
        afterReveal: function () {
            // 动画结束时放的回调
            // console.log("动画结束");
        },
        beforeReset: function () {
            // 动画开始被重置
            // 什么是动画重置?
            // 执行动画的元素离开屏幕之后就会被重置
            // 重置就是重新设置为动画开始之前的默认样式
            console.log("动画开始被重置");
        },
        afterReset: function () {
            // 动画重置结束
            console.log("动画重置结束");
        }
    });
上一篇下一篇

猜你喜欢

热点阅读