ViewTransition: finished ããããã£
Baseline
2025
æè¿å©ç¨å¯è½
October 2025以éããã®æ©è½ã¯ææ°ã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã³ãã©ã¦ã¶ã¼ã§åä½ãã¾ããå¤ã端æ«ããã©ã¦ã¶ã¼ã§ã¯åä½ããªããã¨ãããã¾ãã
finished 㯠ViewTransition ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®èªã¿åãå°ç¨ã®ããããã£ã§ããã¥ã¼é·ç§»ã®ã¢ãã¡ã¼ã·ã§ã³ãå®äºããæ°ãããã¼ã¸ãã¥ã¼ãã¦ã¼ã¶ã¼ã«è¡¨ç¤ºããæä½å¯è½ã«ãªãã¨å±¥è¡ããããããã¹ (Promise) ã§ãã
finished ã¯ãåä¸ææ¸ (SPA) éã®é·ç§»ã«ããã¦ã®ã¿ãdocument.startViewTransition() ã«æ¸¡ãããã³ã¼ã«ããã¯ãä¾å¤ãçºçãããããæå¦ããããããã¹ãè¿ããå ´åã«ã®ã¿æå¦ããã¾ããããã¯ããã¼ã¸ã®æ°ããç¶æ
ãçæãããªãã£ããã¨ã示ãã¾ãã
é·ç§»ã®ã¢ãã¡ã¼ã·ã§ã³ãéå§ãããªãã£ãããViewTransition.skipTransition() ã使ç¨ãã¦é·ç§»ä¸ã«ã¹ããããããå ´åã§ããçµäºç¶æ
ã«å°éãã¦ããããã finished ã¯å±¥è¡ããã¾ãã
å¤
ãããã¹ (Promise) ã§ãã
ä¾
>æ§ã ãªæä½ã«æ§ã ãªé·ç§»
ç¹å®ã®ããã²ã¼ã·ã§ã³ã§ãåºæã®é·ç§»ãè¦æ±ããããã¨ãããã¾ããä¾ãã°ããæ»ããããã²ã¼ã·ã§ã³ã¯ãé²ããããã²ã¼ã·ã§ã³ã¨ã¯ç°ãªãé·ç§»ãå¿
è¦ããããã¾ããããã®ãããªã±ã¼ã¹ãå¦çããæè¯ã®æ¹æ³ã¯ã <html> è¦ç´ ã«ã¯ã©ã¹åãè¨å®ãããã¥ã¼é·ç§»ã®ã¢ãã¡ã¼ã·ã§ã³ã使ç¨ããªããé·ç§»ãå¦çããé·ç§»ãå®äºãããã¯ã©ã¹åãé¤å»ãããã¨ã§ãã
async function handleTransition() {
if (isBackNavigation) {
document.documentElement.classList.add("back-transition");
}
const transition = document.startViewTransition(() =>
updateTheDOMSomehow(data),
);
try {
await transition.finished;
} finally {
document.documentElement.classList.remove("back-transition");
}
}
ã¡ã¢:
isBackNavigation ã¯çµã¿è¾¼ã¿æ©è½ã§ã¯ããã¾ãããããã¯çè«çãªæ©è½ã§ãããã²ã¼ã·ã§ã³ API ãªã©ã使ç¨ãã¦å®è£
ã§ããããããã¾ããã
仿§æ¸
| 仿§æ¸ |
|---|
| CSS View Transitions Module Level 1 > # dom-viewtransition-finished > |