Rumah > Soal Jawab > teks badan
P粉2657249302023-08-30 15:52:56
Satu pendekatan yang mungkin ialah menambah atribut data pada elemen dan kemudian menambah pendengar acara akhir animasi padanya supaya apabila animasi selesai, pendengar acara tahu untuk mengalih keluar kelas. Lihat contoh di bawah.
document.getElementById('clicky').addEventListener('click', () => { const element=document.querySelector('.highlight'); element.setAttribute('data-remove-class', 'highlight'); element.innerHTML='将在动画结束时移除类'; }); document.querySelector('.highlight').addEventListener('animationend', (e) => { const removeClass = e.target.getAttribute('data-remove-class'); if (removeClass == 'highlight') { e.target.classList.remove(removeClass); e.target.removeAttribute('data-remove-class'); e.target.innerHTML='类已移除!'; } });
.highlight { animation-name: highlight; animation-duration: 3s; } @keyframes highlight { 0% { background-color: yellow; } 99.99% { background-color: orange; } }
<div class='highlight'>正在动画中!</div> <button id='clicky'>移除类</button>