我试图从影子根选择一个标签,但不工作。那么,如何从嵌套的影子根元素中选择特定的标签呢?
#shadow-root(open)
<start>
#shadow-root(open)
<plural>
#shadow-root(open)
<main>
#shadow-root(open)
<content>
<p>..text..</p>
</content>
</main>
</plural>
</starts>
typescript :
let inside = this.shadowRoot.querySelector('content').innerHTML;
console.log(inside);
2条答案
按热度按时间oxcyiej71#
对于未知级别的
shadowRoot
,您需要“遍历DOM”并潜入shadowRoots:o75abkj42#
要从嵌套的影子根中选择元素,可以使用
querySelector().shadowRoot
方法访问每个影子根级别:**请注意:**您不能跳过一个影子DOM级别,因此请确保您从DOM的顶部开始跟踪每个级别。
另一个可能有帮助的提示:
当处理一个复杂的DOM,其中包含许多嵌套的Shadow DOM时,找到元素路径的最佳方法是使用devtools:
right click on the element > Copy > Copy js path
(Chrome示例)