pin*_*yid 3 html javascript web-component shadow-dom
我有
div id=outer
#shadowRoot
div id=inner
button
Run Code Online (Sandbox Code Playgroud)
在按钮的点击处理程序中,我想引用 div“inner”。在非 shadowDom 世界中,这将是document.getElementById('inner'),但在 shadow DOM 世界中等价物是什么?
注意。这是从自定义元素内部访问。我不是想从外面刺穿 shadow DOM。
您可以使用绝对路径:用于shadowRoot获取 Shadow DOM 内容。
document.querySelector( 'div#outer' ).shadowRoot.querySelector( 'div#inner' )
Run Code Online (Sandbox Code Playgroud)
或者相对路径:用于getRootNode()获取Shadow DOM根
event.target.getRootNode().querySelector( 'div#inner' )
Run Code Online (Sandbox Code Playgroud)
例子:
document.querySelector( 'div#outer' ).shadowRoot.querySelector( 'div#inner' )
Run Code Online (Sandbox Code Playgroud)
event.target.getRootNode().querySelector( 'div#inner' )
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1024 次 |
| 最近记录: |