Shadow dom shadowRoot.getSelection()?

Shadow dom shadowRoot.getSelection()?,shadow-dom,lit-element,lit,Shadow Dom,Lit Element,Lit,我有一个丰富的编辑器,我正在编写一个lit元素自定义元素。我正在使用Firefox(最新版本)进行测试。我试图在自定义元素的shadowDom(在方法中)中获取内容可编辑元素的选择 在Firefox调试器中,this.shadowRoot对于shadowRoot元素看起来是正确的,但是没有定义this.shadowRoot.getSelection, 尽管 表示shadowRoot。getSelection()是在阴影DOM中获取选择的正确方法。 有人能告诉我我遗漏了什么吗 非常感谢 几天来,我

我有一个丰富的编辑器,我正在编写一个lit元素自定义元素。我正在使用Firefox(最新版本)进行测试。我试图在自定义元素的shadowDom(在方法中)中获取内容可编辑元素的选择

在Firefox调试器中,
this.shadowRoot
对于shadowRoot元素看起来是正确的,但是没有定义
this.shadowRoot.getSelection
, 尽管 表示
shadowRoot。getSelection()
是在阴影DOM中获取选择的正确方法。 有人能告诉我我遗漏了什么吗


非常感谢

几天来,我一直试图在阴影区内进行选择。 到目前为止,我的理解是“this.shadowRoot.getSelection()”工作正常 (在Chrome和Firefox中测试), 但仅适用于“打开”模式下的shadowdom,因为无法访问“this.shadowRoot” 在“关闭”模式下:“无法读取null的属性“getSelection”

当然,您可以在初始化时自己存储对shadowRoot的引用,
但是,在JavaScript中很难将此引用保持私有。

回答我自己的问题:在shadowRoot中工作时,应该在Chrome上使用shadowRoot.getSelection(),在其他浏览器上使用document.getSelection()。在Safari&FF?Justin上使用shadowRoot中的节点,“document.getSelection()”可以在FF上使用;我还没有在Safari上试用过,但我想有人告诉我可以。