Я пытаюсь создать функцию в своем проекте React, которая создаст новый элемент, который воспроизводит один l oop gif, а затем удаляет элемент. До сих пор я был полу-успешным, используя это:
function playGif() {
var gif = document.createElement('img')
gif.className = "gif-play"
document.body.appendChild(gif)
setTimeout(() => { gif.parentNode.removeChild(gif); }, 600)
}
Со следующим CSS:
.gif-play {
width: 256px;
height: 256px;
position: absolute;
background-image: url(./assets/images/animations/atk1.gif);
background-size: cover;
}
Однако, независимо от того, какое время я установил для удаления элемента ( даже точная продолжительность GIF в миллисекундах) GIF по-прежнему будет отсекать и играть с середины после нескольких нажатий кнопок.
Я также попытался установить изображение sr c прямо так:
function playGif() {
var gif = document.createElement('img')
gif.src = require('./assets/images/animations/atk1.gif')
document.body.appendChild(gif)
setTimeout(() => { gif.parentNode.removeChild(gif); }, 600)
}
Но с этим gif никогда не появляется вообще, только испорченное изображение. Я думал, что использование require () в React должно было исправить это, но у меня все равно это не работает.
Так что любые советы о том, как заставить мой gif играть с самого начала, когда я вызываю функцию, быть великим Спасибо!