KeyframeEffect: phương thức getKeyframes()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2020.
Phương thức getKeyframes() của KeyframeEffect trả về một mảng các keyframe được tính toán tạo nên hoạt hình này cùng với các offset được tính toán của chúng.
Cú pháp
getKeyframes()
Tham số
Không có.
Giá trị trả về
Trả về một chuỗi các đối tượng với định dạng sau:
- các cặp giá trị thuộc tính
-
Nhiều cặp giá trị thuộc tính được chứa trong mỗi keyframe của hoạt hình.
offset-
Offset của keyframe được chỉ định là số từ
0.0đến1.0bao gồm, hoặcnull. Điều này tương đương với việc chỉ định trạng thái bắt đầu và kết thúc theo phần trăm trong CSS stylesheets sử dụng@keyframes. Sẽ lànullnếu keyframe được tự động giãn cách. computedOffset-
Offset được tính toán cho keyframe này, được tính khi danh sách các keyframe được tính toán được tạo. Không giống như
offsetở trên,computedOffsetkhông bao giờ lànull. easing-
Hàm easing được sử dụng từ keyframe này đến keyframe tiếp theo trong chuỗi.
composite-
Thao tác
KeyframeEffect.compositeđược sử dụng để kết hợp các giá trị được chỉ định trong keyframe này với giá trị bên dưới. Sẽ vắng mặt nếu thao tác tổng hợp được chỉ định trên effect đang được sử dụng.
Ví dụ
Trong ví dụ sau, chúng ta có thể kiểm tra hoạt hình lăn để xem các keyframe của nó bằng phương thức getKeyframes():
const emoji = document.querySelector("div"); // element to animate
const rollingKeyframes = new KeyframeEffect(
emoji,
[
{ transform: "translateX(0) rotate(0)" }, // keyframe
{ transform: "translateX(200px) rotate(1.3turn)" }, // keyframe
],
{
// keyframe options
duration: 2000,
direction: "alternate",
easing: "ease-in-out",
iterations: "Infinity",
},
);
const rollingAnimation = new Animation(rollingKeyframes, document.timeline);
rollingAnimation.play();
// Array [ {…}, {…} ]
console.log(rollingAnimation.effect.getKeyframes());
<div>🤣</div>
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| Web Animations> # dom-keyframeeffect-getkeyframes> |
Tương thích trình duyệt
Xem thêm
- Web Animations API
- Phương thức của đối tượng
KeyframeEffect.