SVGAnimationElement: метод getStartTime()
Базовая реализация Широко поддерживается
Эта функция хорошо реализована и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с января 2020 года.
Метод SVGAnimationElement getStartTime() возвращает число с плавающей точкой, представляющее начальное время, в секундах, для текущего интервала этого элемента анимации, если он существует, независимо от того, начался ли этот интервал.
Начальное время, возвращаемое getStartTime() , измеряется в секундах относительно времени начала временной шкалы контейнера.
Время начала временной шкалы — это момент, когда контейнер времени начинает отсчёт своей временной шкалы. Оно служит точкой отсчёта для всех анимаций внутри этого контейнера.
Контейнер времени — это элемент или контекст, определяющий локальную временную шкалу для одной или нескольких анимаций. Анимации внутри контейнера времени измеряются относительно его временной шкалы. Если контейнер времени задерживается, приостанавливается или манипулируется, все анимации внутри него соответствующим образом корректируются.
Это свойство отражает атрибут begin элемента <animate>, <animateMotion> или <animateTransform>.
Синтаксис
getStartTime()
Параметры
Нет (undefined).
Возвращаемое значение
Число с плавающей точкой.
Исключения
-
InvalidStateErrorDOMException -
Выбрасывается, если у
SVGAnimationElementнет текущего интервала. Это происходит, когда время анимации по атрибутуbeginне достигнуто или не определено, поэтому методgetStartTime()не может определить корректное начальное время. Например, когда анимация установлена на запуск через 3 секунды, но пользователь ещё не кликнул, чтобы запустить её.
Примеры
В этом примере показано, как атрибут begin="3s" заставляет анимацию начинаться через 3 секунды после начала временной шкалы контейнера времени.
<svg width="200" height="200" viewBox="0 0 200 200">
<circle cx="50" cy="50" r="20" fill="rebeccapurple">
<animate attributeName="cx" from="50" to="150" dur="5s" begin="3s" />
</circle>
</svg>
const animationElement = document.querySelector("animate");
const startTime = animationElement.getStartTime();
console.log(
`The animation starts at: ${startTime} seconds relative to the time container's timeline`,
); // Output: 3
Метод getStartTime() возвращает 3.0 , так как это время относительно начала временной шкалы контейнера.
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
getStartTime |
2 | 79 | 4 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | 3 |
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/SVGAnimationElement/getStartTime