我有一个脚本(我认为)需要使用SurroundContents来包装选择区域。这样做使我可以添加一些内容,然后将范围重新分配为选择内容。

我相信我已经将问题缩小到滥用getRangeAt了,但是我不太确定如何解决它。

这是简短的代码:

        function getRangeObject(selectionObject) {
        // Moz
        if (selectionObject.getRangeAt) {
            return selectionObject.getRangeAt(0);
        }

这是第89行,它向我抛出错误:
rangeObject.surroundContents(newNode);

当然,这是错误:



如果对整个过程有帮助,则可以在此处查看脚本(到目前为止):
http://www.latentmotion.com/insertNode/index26.html

我要使用的文本选择帮助器是quirksmode-没有详细说明多个范围located here的使用。

在此先感谢您的帮助。

最佳答案

我认为错误消息很好地说明了问题。 This section of the DOM Range spec描述了导致使用RangesurroundContents引发异常的原因。

10-05 20:53