HTML - DOM Style 对象 animationTimingFunction 属性



HTML DOM Style 对象 **animationTimingFunction** 属性指定动画的速度曲线。速度曲线定义了在从一种 CSS 样式更改为另一种 CSS 样式时过渡的平滑程度。

语法

以下是获取或设置 animationTimingFunction 属性的语法。

设置 animationTimingFunction 属性
object.style.animationTimingFunction= "linear | ease | ease-in | ease-out | cubic-bezier(n, n, n, n) | initial | inherit";
获取 animationTimingFunction 属性
object.style.animationTimingFunction;

属性值

描述
linear 它指定动画从开始到结束以相同的速度播放。
ease 这是默认值,其中动画开始和结束缓慢,但在中间更快。
ease-in 它指定动画的缓慢开始。
ease-out 它指定动画的缓慢结束。
ease-in-out 它指定动画的缓慢开始和结束。
cubic-bezier(n, n, n, n) 您可以在 cubic-bezier 函数中指定自己的值,范围从 0 到 1。
initial 用于将此属性设置为其默认值。
inherit 用于继承其父元素的属性。

返回值

它返回一个字符串值,表示元素的 animation-timing-function 属性。

HTML DOM Style 对象“animationTimingFunction”属性示例

以下示例说明了不同的属性值及其对动画的影响。

将 Timing-Function 设置为“linear”和“cubic”

此示例说明了当最初具有默认值 **ease** 时,linear 和 cubic animationTimingFunction。

<!DOCTYPE html>
<html lang="en">
<head>
    <title>
        HTML DOM Style Object animationTimingFunction Property
    </title>
    <style>
        #animation {
            width: 100px;
            height: 100px;
            background: #04af2f;
            position: relative;
            animation: right 3s infinite;
        }
        @keyframes right {
            from {
                left: 0px;
            }
            to {
                left: 400px;
            }
        }
    </style>
</head>
<body>
    <p>The animation has ease value by default.</p>
    <p>Click to get different timing functions.</p>
    <button onclick="linear()">Linear</button>
    <button onclick="cubic()">Cubic</button>
    <div id="animation"></div>
    <script>
        function linear() {
            document.getElementById("animation")
            .style.animationTimingFunction = "linear";
        }
        function cubic() {
            document.getElementById("animation")
            .style.animationTimingFunction = 
            "cubic-bezier(0.2,0.8,0.6,0.2)";
        }
    </script>
</body>
</html>

将 Timing-Function 设置为“ease-in”、“ease-out”和“ease-in-out”

此示例说明了当最初具有默认值 **ease** 时,ease-in、ease-out 和 ease-in-out animationTimingFunction。

<!DOCTYPE html>
<html lang="en">
<head>
    <title>
        HTML DOM Style Object animationTimingFunction Property
    </title>
    <style>
        #animation {
            width: 100px;
            height: 100px;
            background: #04af2f;
            position: relative;
            animation: right 3s infinite;
        }
        @keyframes right {
            from {
                left: 0px;
            }
            to {
                left: 400px;
            }
        }
    </style>
</head>
<body>
    <p>The animation has ease value by default.</p>
    <p>Click to get different timing functions.</p>
    <button onclick="inn()">Ease-in</button>
    <button onclick="out()">Ease-out</button>
    <button onclick="inOut()">Ease-in-out</button>
    <div id="animation"></div>
    <script>
        function inn() {
            document.getElementById("animation")
            .style.animationTimingFunction = "ease-in";
        }
        function out() {
            document.getElementById("animation")
            .style.animationTimingFunction = "ease-out";
        }
        function inOut() {
            document.getElementById("animation")
            .style.animationTimingFunction = "ease-in-out";
        }
    </script>
</body>
</html>

支持的浏览器

属性 Chrome Edge Firefox Safari Opera
animationTimingFunction 是 43 是 12 是 16 是 9 是 30
html_dom_style_object_reference.htm
广告