【发布时间】:2016-11-03 04:56:57
【问题描述】:
从显示在 WebView 中的 XML 文件,我希望能够用鼠标选择文本,当按下按钮时,为该选择添加一个唯一的 XML 标记。
示例 XML 文件片段:
<p>
some text that is in this paragraph
</p>
如果我从上面选择“就是”,然后按下按钮,它应该会导致:
<p>
some text <x id="foo">that is</x> in this paragraph
</p>
<x> 是一个特殊标签,我将用于我自己的目的。它可能具有属性,例如 id 或其他东西。
我发现我可以使用一些 JS 代码来收集有关 HTML 标签的信息并在给定标签中定位选定的文本,但我不知道如何获得“绝对”位置。我也不知道如何将 XML 标记注入 XML 文件。或者我应该把它当作 HTMLEditor 什么的?我只是不希望用户能够更改 XML 文件,除非以这种特殊方式。
有什么想法吗?非常感谢。
【问题讨论】:
-
我发现我可以使用这个
webEngine.executeScript("window.getSelection().getRangeAt(0).insertNode(document.createElement(\"p\"))");添加一个段落,但它实际上并没有改变底层文件。