Сбросьте анимацию webp, чтобы она воспроизводилась с кадра 1, перезапустите анимированный webp - PullRequest
0 голосов
/ 12 июля 2020

Эта проблема обсуждалась для файлов gif. Вот что НЕ РАБОТАЕТ для файлов webp. Скрипт начинается с,

var animatedWebpImg = document.getElementById('idOfTheWebpInsideAnImgElement');

Первая неудачная попытка была:

animatedWebpImg.style.display = "none";
setTimeout(function() {  animatedWebpImg.style.display = "block";  },100);

Во-вторых, я пробовал removeChild() и appendChild() с точно такими же логами c, но это не так. тоже не работает.

Наконец я подошел, но безуспешно,

var srcOfTheImg = animatedWebpImg.src;
animatedWebpImg.src = "";                 // empty and then back to original
animatedWebpImg.src = srcOfTheImg;

1 Ответ

0 голосов
/ 12 июля 2020

Вот что сработало,

var srcOfTheImg = animatedWebpImg.src;
animatedWebpImg.src = "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==";
setTimeout(function () {  animatedWebpImg.src = srcOfTheImg;  },100);

Это означает, что вместо того, чтобы очистить sr c до нуля, мне пришлось заполнить его прозрачным пикселем - чем-то невидимым.

...