shadowRoot.getSelection()?

问题描述 投票:0回答:1

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

在Firefox调试器中)。) this.shadowRoot 看起来对shadowRoot元素是正确的,但是 this.shadowRoot.getSelection 没有定义,即使 DocumentOrShadowRootshadowRoot.getSelection() 是正确的方式来获得影子DOM内的选择.任何人都可以shed light on something I'm missing?

非常感谢

polymer shadow-dom
1个回答
0
投票

我自己尝试在shadowdom中获取一个选择,目前我的理解是 "this.shadowRoot.getSelection() "可以正常工作(在Chrome和Firefox中测试),但只适用于 "open "模式下的shadowdom,因为 "this.shadowRoot "不能在 "closed "模式下被访问。因为在 "关闭 "模式下,"this.shadowRoot "无法被访问:"无法读取属性'getSelection'为null"。

当然你可以在初始化时自己存储一个对shadowRoot的引用,但是在JavaScript中很难保持这个引用的私密性。

© www.soinside.com 2019 - 2024. All rights reserved.