gpt4 book ai didi

javascript - 当 IE 的 moveToElementText 吐出 Invalid Argument 异常时怎么办

转载 作者:太空狗 更新时间:2023-10-29 15:39:35 26 4
gpt4 key购买 nike

我们已经为 Xinha 文本编辑器编写了一个插件来处理脚注。你可以看看: http://www.nicholasbs.com/xinha/examples/Newbie.html

为了处理Webkit和IE在行尾处理链接的方式上的一些问题(无法使用光标跳出同一行的链接)我们插入一个空白元素并移动选择到那,总比崩溃吧。这在 Webkit 和 Gecko 中工作正常,但由于某种原因 moveToElementText 吐出一个 Invalid Argument 异常。不管我们传递给它的是哪个元素,这个函数似乎都被完全破坏了。然而,在其他代码路径中,此功能似乎有效。

要使用上面的链接重现错误,请单击主文本输入区域,键入任何内容,然后单击带有绿色加号的黄页图标,在灯箱对话框中键入任何内容,然后单击插入。导致问题的代码示例如下:

  if (Xinha.is_ie)
{
var mysel = editor.getSelection();
var myrange = doc.body.createTextRange();
myrange.moveToElementText(newel);
} else
{
editor.selectNodeContents(newel, false);
}

有问题的代码位于 svn 中: https://svn.openplans.org/svn/xinha_dev/InsertNote

此插件是针对可从 svn 获得的 Xinha 分支构建的: http://svn.xinha.webfactional.com/branches/new-dialogs

最佳答案

它在上面的代码片段中不可见,但 newel 已使用另一个本身附加到 DOM 的元素附加到 dom。当插入一个 dom 元素时,如果你想引用它的兄弟元素,你必须重新检索你的句柄,因为句柄无效(我不确定,但我认为它指的是文档片段中的 DOM 元素而不是文档内部的那个。)从插入操作重新检索句柄后,moveToElementText 停止抛出异常。

关于javascript - 当 IE 的 moveToElementText 吐出 Invalid Argument 异常时怎么办,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/122546/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com