В моем приложении я создаю новый элемент каждую секунду.Они должны быть исчезнут, как они созданы.Вот как я это сделал:
window.setInterval(() => {
const element = document.createElement('div');
element.classList.add('dot', 'hidden');
document.getElementById('content').appendChild(element);
element.classList.remove('hidden');
}, 1000);
.dot {
display: inline-block;
width: 10px;
height: 10px;
border-radius: 50%;
background-color: rgba(255, 255, 255, .7);
margin: 0 5px 5px 0;
transition: opacity 1s;
}
.hidden {
opacity: 0;
}
Я думал, что это заставит переход работать, но это не так.Я также попытался удалить класс hidden
после задержки, например:
setTimeout(() => element.classList.remove('hidden'), 100);
Это интересно, потому что это работает, только если задержка достаточно велика.Если я установлю его на 10 мс, некоторые точки исчезнут, а другие появятся мгновенно.
Есть ли лучший, простой и надежный способ заставить его работать, без угадывания задержки setTimeout()
?