我正在修改TinyMCE的现有拼写检查插件。
这是应该发生的事情: 1.用户点击“空格”并运行拼写检查。 2.如果单词拼写错误,单词将用span填充并获得红色下划线
我发现的事情是,当用户点击空格键时,单词会进行拼写检查,但光标会弹回到刚刚输入的单词的末尾(而不是空格所在的位置)(你可以看到这个在行动中)在http://mail.solidhouse.com/webmail2/test.html)
这是我的伪代码: var b = this.editor.selection.getBookmark(); //为每个节点 node.nodeValue.replace(r5,'$ 1 $ 2'); this.editor.selection.moveToBookmark(B);
我怀疑的是moveToBookmark将光标保留在元素中但我不知道如何解决这个问题。
(我已尝试增加b.start和b.end,但这不起作用)
我知道这很难解释。对此有任何想法非常感谢。
答案 0 :(得分:1)
尝试将书签开始/结束递增2而不是1(如果还没有)。由于下划线在拼错的单词周围添加了一个标签,因此在书签中需要考虑额外的2个位置:跨度的每一侧都有1个。
答案 1 :(得分:0)
你能抓住它的父母,让自己脱离这个元素吗?
this.parentNode.moveToBookmark(b);
或类似的东西。