HTML - DOM Style 对象 transitionTimingFunction 属性



HTML DOM Style 对象 **transitionTimingFunction** 属性设置或返回过渡效果的速度曲线。此属性负责在过渡持续时间内改变过渡速度。

语法

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

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

属性值

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

返回值

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

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

以下示例说明了不同的 transitionTimingFunction 属性值及其对 div 元素的影响。

将 transitionTimingFunction 设置为“linear”和“cubic”

以下示例说明了当 div 元素的初始值为 ease 时,应用于 div 元素的 linear 和 cubic transitionTimingFunction。

<!DOCTYPE html>
<html lang="en">
<head>
    <title>
        HTML DOM Style Object transitionTimingFunction Property
    </title>
    <style>
        #transition {
            padding: 50px;
            height: 200px;
            width: 200px;
            border: 2px solid black;
            margin: auto;
            background-color: azure;
            transition: all 1s ease;
        }
        #transition:hover {
            padding: 50px;
            height: 250px;
            width: 250px;
            border: 2px solid yellow;
            margin: auto;
            background-color: #04af2f;
            color: white;
        }
    </style>
</head>
<body>
    <p>
        Click to set transition Timing Function.
    </p>
    <button onclick="linear()">Linear</button>
    <button onclick="cubic()">Cubic</button>
    <section id="transition">
        Hover over div to see transition effect.
    </section>
    <script>
        function linear() {
            document.getElementById("transition")
                .style.animationTimingFunction = "linear";
        }
        function cubic() {
            document.getElementById("transition").style
                .animationTimingFunction = "cubic-bezier(0.2,0.8,0.6,0.2)";
        }
    </script>
</body>
</html>

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

以下示例说明了当 div 元素的初始值为 ease 时,应用于 div 元素的 ease-in、ease-out 和 ease-in-out transitionTimingFunction。

<!DOCTYPE html>
<html lang="en">
<head>
    <title>
        HTML DOM Style Object transitionTimingFunction Property
    </title>
    <style>
        #transition {
            padding: 50px;
            height: 200px;
            width: 200px;
            border: 2px solid black;
            margin: auto;
            background-color: azure;
            transition: all 1s ease;
        }
        #transition:hover {
            padding: 50px;
            height: 250px;
            width: 250px;
            border: 2px solid yellow;
            margin: auto;
            background-color: #04af2f;
            color: white;
        }
    </style>
</head>
<body>
    <p>
        Click to set transition Timing Function.
    </p>
    <button onclick="inn()">Ease-in</button>
    <button onclick="out()">Ease-out</button>
    <button onclick="inOut()">Ease-in-out</button>
    <section id="transition">
        Hover over div to see transition effect.
    </section>
    <script>
        function inn() {
            document.getElementById("transition")
                .style.animationTimingFunction = "ease-in";
        }
        function out() {
            document.getElementById("transition")
                .style.animationTimingFunction = "ease-out";
        }
        function inOut() {
            document.getElementById("transition")
                .style.animationTimingFunction = "ease-in-out";
        }
    </script>
</body>
</html>

支持的浏览器

属性 Chrome Edge Firefox Safari Opera
transitionDuration 是 26 是 12 是 16 是 9 是 12.1
html_dom_style_object_reference.htm
广告