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
廣告