16. jQuery 的综合动画 和 jQuery 的停止动画

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了16. jQuery 的综合动画 和 jQuery 的停止动画相关的知识,希望对你有一定的参考价值。

jQuery 的综合动画

+ 可以按照你的设定去进行运动

1. animate()
=> 语法: animate({}, 时间, 运动曲线, 回调函数)
=> {}: 书写你要运动的属性 (普通Css属性)
=> 注意:
-> 颜色相关的属性, 运动不了
-> CSS3 的 2d 和 3d 动画效果运动不了

例: 注意 书写 {} 运动的属性时 带单位的话记得加上 单引号  \' \'   

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="jqsourse.js"></script>
    <style>
        *{
            margin:0;
            padding: 0;
        }
        div{
            width: 100px;
            height: 100px;
            background-color: red;
            position: relative;
        }
    </style>
</head>
<body>
<button class="animate">点击运动</button>
<div></div>


<script>
    $(".animate").click(()=>{

        $("div").animate({
            width:300,
            height:\'300px\',
            left:\'100px\',
            top:\'100px\',
            borderRadius:\'50%\',
            color:\'#2600ff\'         //没用的啊!  颜色 和 Css 2D 、 3D 在这里都不起作用
        },2000,\'linear\',()=>{
            console.log("已执行动画!");
        })
    });
</script>
</body>
</html>

 

 

 

jQuery 的停止动画

 

+ 因为当你给一个元素设置动画以后
+ 如果快速触发, 会停不下来, 直到你所有的触发都执行完毕为止
+ jquery 给我们提供两个临时停下动画的方法

1. stop()


+ 语法: 元素集合.stop()


+ 当代码执行到这句的时候, 不管运动到什么程度, 立刻停下来 即立即停止那种:

+ 运动到什么位置就停止在什么位置

 

 

2. finish()
+ 语法: 元素集合.finish()


+ 当代码执行到这句的时候, 不管运动到什么程度, 直接去到运动结束位置

+ 直接完成本次动画

 

 

例:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="jqsourse.js"></script>
    <style>
        *{
            margin:0;
            padding: 0;
        }
        div{
            width: 100px;
            height: 100px;
            background-color: red;
            position: relative;
        }
    </style>
</head>
<body>
<button class="animate">点击运动</button>
<button class="stop">点击暂停</button>
<button class="finish">直接结束</button>
<div></div>


<script>
    $(".animate").click(()=>{
        $("div").animate({
            width:300,
            height:\'300px\',
            left:\'100px\',
            top:\'100px\',
            borderRadius:\'50%\',
            color:\'#2600ff\'         //没用的啊!  颜色 和 Css 2D 、 3D 在这里都不起作用
        },2000,\'linear\',()=>{
            console.log("已执行动画!");
        })
    });


    /***-------------------------------------------*/
    $(".stop").click(()=>{
        $("div").stop();
        });

    /***-------------------------------------------*/

    $(".finish").click(()=>{
        $("div").finish()
    });

</script>
</body>
</html>

注意: 你点击暂停 再继续点击 开始 他会继续做动画  ,而不是重新来一遍.

以上是关于16. jQuery 的综合动画 和 jQuery 的停止动画的主要内容,如果未能解决你的问题,请参考以下文章

jQuery动画

JQuery--基础动画滑动动画淡入淡出动画自定义动画

如何用jquery 修改CSS3动画的keyframe

带有 jQ​​uery 动画的慢速/无响应动画

JQ动画导航

Jquery的基本架构