ã¦ã§ãã³ã³ãã¼ãã³ãã¯ãä¸é£ã®ãã¾ãã¾ãªæè¡ã§ããããã«ãããåå©ç¨å¯è½ãªã«ã¹ã¿ã è¦ç´ ã使ãããã®æ©è½ãä»ã®ã³ã¼ãããåé¢ãã¦ã¦ã§ãã¢ããªã±ã¼ã·ã§ã³ã§å©ç¨ã§ããããã«ãã¾ãã
æ¦å¿µã¨ä½¿ç¨æ³éçºè ãªããåç¥ã§ãããããå¯è½ãªéãã³ã¼ããåå©ç¨ãããã¨ã¯è¯ãèãã§ãããããããã¯ã以åãããã«ã¹ã¿ã ã®ãã¼ã¯ã¢ããæ§é ã«ã¨ã£ã¦ãããã»ã©ç°¡åãªãã¨ã§ã¯ããã¾ããã§ãããè¤é㪠HTML ï¼ã¨ä¸é£ã®ã¹ã¿ã¤ã«ãã¹ã¯ãªããï¼ãèãã¦ã¿ã¦ä¸ãããã¨ãã«ãã«ã¹ã¿ã UI ã®å¶å¾¡ãã¬ã³ããªã³ã°ããããã«ãã³ã¼ããæ¸ããªããã°ãªãã¾ãããããã«ã注æãã¦ããªãã¨ããããã®å¶å¾¡ãã©ã使ãåããã§ããã¼ã¸ãè¤éãªãã®ã«ãªã£ã¦ãã¾ãã¾ãã
ã¦ã§ãã³ã³ãã¼ãã³ãã¯ãä¸è¨ã®åé¡ã®è§£æ±ºãç®æãã¦ãã¾ãã ã¦ã§ãã³ã³ãã¼ãã³ãã¯ã3 ã¤ã®ä¸»è¦ãªæè¡ãããªããããããçµã¿åããã¦ãå¤ç®çãªã«ã¹ã¿ã è¦ç´ ã使ãã¾ããã«ãã»ã«åãããæ©è½ã使ããã¨ã§ãã³ã¼ãã®éè¤ãæãããã¨ãªããã©ãã§ãåå©ç¨ãããã¨ãã§ãã¾ãã
ã«ã¹ã¿ã è¦ç´ ã¨ãã®åä½ãå®ç¾©ããããã®ãä¸é£ã® JavaScript API ã§ãã以éãã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®ä¸ã§å¥½ããªã ã使ç¨ãããã¨ãã§ãã¾ãã
ã«ãã»ã«åããããã·ã£ãã¦ã DOM ããªã¼ãè¦ç´ ã«ç´ä»ããé¢é£ããæ©è½ãå¶å¾¡ããããã®ãä¸é£ã® JavaScript API ã§ããã·ã£ã㦠DOM ããªã¼ã¯ãã¡ã¤ã³ææ¸ã® DOM ã¨ã¯å¥ã«ã¬ã³ããªã³ã°ããã¾ãããããã¦ãè¦ç´ ã®æ©è½ãå ¬éããã«æ¸ã¿ãææ¸ã®ä»ã®é¨åã¨ã®éè¤ãæãããã¨ãªããã¹ã¯ãªããåãã¹ã¿ã¤ã«åã§ãã¾ãã
<template>
㨠<slot>
è¦ç´ ã«ãã£ã¦ãã¬ã³ããªã³ã°ããããã¼ã¸å
ã«è¡¨ç¤ºãããªããã¼ã¯ã¢ããã®ãã³ãã¬ã¼ããæ¸ããã¨ãã§ãã¾ããã«ã¹ã¿ã è¦ç´ ã®æ§é ä½ã®åºç¤ã¨ãã¦ãããããä½åº¦ãåå©ç¨ã§ãã¾ãã
ã¦ã§ãã³ã³ãã¼ãã³ããå®è£ ããåºæ¬çãªæµãã¯ã以ä¸ã«æãã¦ããéãã§ãã
CustomElementRegistry.define()
ã¡ã½ããã«ãè¦ç´ ã®ååãæ©è½ãæç¤ºããã¦ããã¯ã©ã¹ãããã¯é¢æ°ãã¾ããªãã·ã§ã³ã§ã©ã®è¦ç´ ãç¶æ¿ããããæ¸¡ãã¦ä¸ãããElement.attachShadow()
ã¡ã½ããã使ã£ã¦ãã·ã£ã㦠DOM ãã«ã¹ã¿ã è¦ç´ ã«ç´ä»ãã¾ããé常㮠DOM ã¡ã½ããã使ã£ã¦ãåè¦ç´ ãã¤ãã³ããªã¹ãã¼ãªã©ãã·ã£ã㦠DOM ã«è¿½å ãã¦ä¸ããã<template>
㨠<slot>
ã使ã£ã¦ãHTML ãã³ãã¬ã¼ããå®ç¾©ãã¾ããé常㮠DOM ã¡ã½ãããå度使ã£ã¦ããã³ãã¬ã¼ããã¯ãã¼ã³ããã·ã£ã㦠DOM ã«ç´ä»ãã¦ãã ãããç°¡åãªã¦ã§ãã³ã³ãã¼ãã³ãã使ããããã«ãã«ã¹ã¿ã è¦ç´ ã®æ©è½ã®ä½¿ãæ¹ãç´¹ä»ããã¬ã¤ãã§ãããã以å¤ã«ããã©ã¤ããµã¤ã¯ã«ã³ã¼ã«ããã¯ããã®ä»ã®é«åº¦ãªæ©è½ã®ä¸ãè¦ãã¦ããã¾ãã
ã·ã£ã㦠DOM ã®åºç¤ãçºããã¬ã¤ãã§ããã·ã£ã㦠DOM ãè¦ç´ ã«ã©ãç´ä»ããããã·ã£ã㦠DOM ããªã¼ã«ã©ã追å ããããã©ãã¹ã¿ã¤ã«ä»ãããããªã©ãç´¹ä»ãã¦ãã¾ãã
<template>
㨠<slot>
è¦ç´ ã使ã£ã¦ãåå©ç¨å¯è½ãª HTML æ§é ä½ã®å®ç¾©ã¨ä½¿ç¨æ¹æ³ãç´¹ä»ããã¬ã¤ãã§ãã
CustomElementRegistry
ã«ã¹ã¿ã è¦ç´ ã«é¢ããæ©è½ãå«ã¾ãã¦ãã¾ããä¸ã§ã注ç®ãã¹ãã¯ã CustomElementRegistry.define()
ã¡ã½ããã§ãæ°ããã«ã¹ã¿ã è¦ç´ ãç»é²ããããã«ç¨ãã¾ããããã«ãããã«ã¹ã¿ã è¦ç´ ãææ¸å
ã§ä½¿ç¨ã§ããããã«ãªãã¾ãã
Window.customElements
CustomElementRegistry
ãªãã¸ã§ã¯ãã¸ã®åç
§ãè¿ãã¾ãã
ã«ã¹ã¿ã è¦ç´ ã®ã¯ã©ã¹å®ç¾©ã®ä¸ã§å®ç¾©ãããç¹å¥ãªã³ã¼ã«ããã¯é¢æ°ã§ãæåã«å½±é¿ãä¸ãã¾ãã
connectedCallback()
ã«ã¹ã¿ã è¦ç´ ãææ¸ã® DOM ã«åãã¦æ¥ç¶ããã¨ãã«å¼ã³åºããã¾ãã
disconnectedCallback()
ã«ã¹ã¿ã è¦ç´ ãææ¸ã® DOM ããåæãããã¨ãã«å¼ã³åºããã¾ãã
adoptedCallback()
ã«ã¹ã¿ã è¦ç´ ãæ°ããææ¸ã«ç§»åããã¨ãã«å¼ã³åºããã¾ãã
attributeChangedCallback()
ã«ã¹ã¿ã è¦ç´ ã®å±æ§ã®ã²ã¨ã¤ã追å ãåé¤ããããã¯å¤æ´ãããã¨ãã«å¼ã³åºããã¾ãã
以ä¸ã®æ¡å¼µæ©è½ãå®ç¾©ããã¦ãã¾ãã
is
ã°ãã¼ãã« HTML 屿§
æ¨æºã® HTML è¦ç´ ããã«ã¹ã¿ã çµã¿è¾¼ã¿è¦ç´ ã®ããã«æ¯ãèãã¹ãããæå®ã§ãã¾ãã
Document.createElement()
ã¡ã½ããã® "is" ãªãã·ã§ã³
ã«ã¹ã¿ã çµã¿è¾¼ã¿è¦ç´ ã®ããã«æ¯ãèãæ¨æºã® HTML è¦ç´ ã®ã¤ã³ã¹ã¿ã³ã¹ã使ã§ãã¾ãã
ã«ã¹ã¿ã è¦ç´ ã«é¢é£ããæ¬ä¼¼ã¯ã©ã¹ã§ãã
:defined
çµã¿è¾¼ã¿è¦ç´ 㨠CustomElementRegistry.define()
ã§å®ç¾©ãããã«ã¹ã¿ã è¦ç´ ãå«ããããããå®ç¾©æ¸ã¿ã®è¦ç´ ã«ä¸è´ãã¾ãã
:host
使ããã¦ãã CSS ãå«ããã·ã£ã㦠DOM ã®ã·ã£ãã¦ãã¹ãã鏿ãã¾ãã
:host()
使ããã¦ãã CSS ãå«ããã·ã£ã㦠DOM ã®ã·ã£ãã¦ãã¹ãã鏿ãã¾ããï¼ã·ã£ã㦠DOM ã®å å´ããã«ã¹ã¿ã è¦ç´ ã鏿ãããã¨ãã§ãã¾ããï¼ãã ãã颿°ã®å¼æ°ã¨ãã¦æ¸¡ãããã»ã¬ã¯ã¿ã¼ãã·ã£ãã¦ãã¹ãã«ä¸è´ãã¦ããå ´åã«éãã¾ãã
:host-context()
使ããã¦ãã CSS ãå«ããã·ã£ã㦠DOM ã®ã·ã£ãã¦ãã¹ãã鏿ãã¾ããï¼ã·ã£ã㦠DOM ã®å å´ããã«ã¹ã¿ã è¦ç´ ã鏿ãããã¨ãã§ãã¾ããï¼ãã ãã颿°ã®å¼æ°ã¨ãã¦æ¸¡ãããã»ã¬ã¯ã¿ã¼ã DOM é層å ã®ã·ã£ãã¦ãã¹ãã®å ç¥è¦ç´ ã«ä¸è´ãã¦ããå ´åã«éãã¾ãã
:state()
æå®ããã«ã¹ã¿ã ç¶æ
ã«ããã«ã¹ã¿ã è¦ç´ ã¨ä¸è´ãã¾ãã ããæ£ç¢ºã«è¨ãã°ãæå®ããç¶æ
ãè¦ç´ ã® CustomStateSet
ã«åå¨ããç¡åã«ã¹ã¿ã è¦ç´ ã¨ä¸è´ãã¾ãã
ã«ã¹ã¿ã è¦ç´ ã«é¢é£ããæ¬ä¼¼è¦ç´ ã§ãã
::part
ã·ã£ãã¦ããªã¼å
ã«ããè¦ç´ ã§ãä¸è´ãã part
屿§ãæã¤ãã®ã表ãã¾ãã
ShadowRoot
ã·ã£ã㦠DOM ãµãããªã¼ã®ã«ã¼ããã¼ãã表ãã¾ãã
Element
ã®æ¡å¼µ
ã·ã£ã㦠DOM ã«é¢ãã Element
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®æ¡å¼µã§ãã
Element.attachShadow()
ã¡ã½ããã¯ãã·ã£ã㦠DOM ããªã¼ãæå®ãããè¦ç´ ã«åãä»ãã¾ããElement.shadowRoot
ããããã£ã¯ãæå®ãããè¦ç´ ã«åãä»ããããã·ã£ãã¦ã«ã¼ããè¿ãã¾ããåãä»ãããã¦ããã·ã£ãã¦ã«ã¼ãããªãå ´å㯠null
ãè¿ãã¾ããNode
ã¸ã®è¿½å
ã·ã£ã㦠DOM ã«é¢ãã Node
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã¸ã®è¿½å äºé
ã§ãã
Node.getRootNode()
ã¡ã½ããã¯ããã®ã³ã³ããã¹ããªãã¸ã§ã¯ãã®ã«ã¼ããè¿ãã¾ããåå¨ããå ´åã¯ã·ã£ãã¦ã«ã¼ããå«ã¿ã¾ããNode.isConnected
ããããã£ã¯è«çå¤ãè¿ãããã®ãã¼ãããã®ã³ã³ããã¹ããªãã¸ã§ã¯ãï¼é常㮠DOM ã§ããã° Document
ãªãã¸ã§ã¯ããã·ã£ã㦠DOM ã§ããã° ShadowRoot
ï¼ã«æ¥ç¶ããã¦ãããã©ããã示ãã¾ããEvent
ã®æ¡å¼µ
ã·ã£ã㦠DOM ã«é¢ãã Event
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®æ¡å¼µã§ãã
Event.composed
ãã®ã¤ãã³ããã·ã£ã㦠DOM å¢çãè¶
ãã¦æ¨æº DOM ã«ã¾ã§ä¼æããå ´å㯠true
ãããã§ãªããã° false
ãè¿ãã¾ãã
Event.composedPath
ã¤ãã³ãã®ãã¹ï¼ãªã¹ãã¼ãå¼ã³åºããããªãã¸ã§ã¯ãï¼ãè¿ãã¾ãã ShadowRoot.mode
ã closed ã§ã·ã£ãã¦ã«ã¼ããçæãããå ´åãã·ã£ãã¦ããªã¼å
ã®ãã¼ãã¯å«ã¾ãã¾ããã
<template>
HTML ã®æçãå«ã¿ã¾ãããæåã«ææ¸ãèªã¿è¾¼ãã ã¨ãã«ã¯ã¬ã³ããªã³ã°ããããå®è¡æã«ãJavaScript ã使ã£ã¦è¡¨ç¤ºãããã¨ãã§ãã¾ããé¢é£ãã DOM ã¤ã³ã¿ã¼ãã§ã¤ã¹ã¯ HTMLTemplateElement
ã§ãã
<slot>
ã¦ã§ãã³ã³ãã¼ãã³ãå
ã®ãã¬ã¼ã¹ãã«ãã¼ã§ãç¬èªã®ãã¼ã¯ã¢ããã§åãããã¨ãã§ãã¾ããããã«ãããå¥ã® DOM ããªã¼ãçæããããããä¸ç·ã«è¡¨ç¤ºãããã¨ãã§ãã¾ããé¢é£ãã DOM ã¤ã³ã¿ã¼ãã§ã¤ã¹ã¯ HTMLSlotElement
ã§ãã
slot
ã°ãã¼ãã« HTML 屿§
ã·ã£ã㦠DOM ã®ã·ã£ãã¦ããªã¼ã«ããã¹ããããè¦ç´ ã«å²ãå½ã¦ã¾ãã
Element.assignedSlot
èªã¿åãå°ç¨ã®å±æ§ã§ããã®è¦ç´ ãæ¿å
¥ããã <slot>
ã®åç
§ãè¿ãã¾ãã
Text.assignedSlot
èªã¿åãå°ç¨ã®å±æ§ã§ããã®ããã¹ããã¼ããæ¿å
¥ããã <slot>
ã®åç
§ãè¿ãã¾ãã
Element
ã®æ¡å¼µ
ã¹ãããã«é¢ãã Element
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®æ¡å¼µã§ãã
Element.slot
ãã®è¦ç´ ã«åãä»ããããã·ã£ã㦠DOM ã¹ãããã®ååãè¿ãã¾ãã
ã¹ãããã«ç¹åããæ¬ä¼¼è¦ç´ ã§ãã
::slotted
ã¹ãããã«æ¿å ¥ãããã³ã³ãã³ãã«ä¸è´ãã¾ãã
slotchange
ã¤ãã³ã
HTMLSlotElement
ã®ã¤ã³ã¹ã¿ã³ã¹ (<slot>
è¦ç´ ) ã«ããã¦ããã®ã¹ãããã«å«ã¾ãããã¼ããå¤åããã¨ãã«çºè¡ããã¾ãã
web-components-examples ã® GitHub ãªãã¸ããªã¼ã«ãããã¤ãã®ä¾ãç¨æãã¦ããã¾ããæéã¨ã¨ãã«ãããå¤ãã®ä¾ã追å ããããã¨ã§ãããã
仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ html.elements.template api.ShadowRootRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4