// Style: // transition: opacity 1s // transitionを発火する elem.style.opacity = '0'; getComputedStyle(elem); // 終わったら次の画面をactiveにする elem.addEventListener('transitionend', evt => { if (evt.propertyName === 'opacity') { evt.target.remove(); homeScreen.classList.add('active'); } }); /* * でも… */ button.addEventListener('focus', () => { // もしこれがmustacheのようなテンプレート仕組み… render(); }); transitionendが発火されないケース 要