0

我试图用谷歌搜索这个问题,但谷歌不知道这个问题。我正在使用 Qt 4.8.1 QtWebkit 2.2.3+Javascript 来实现某种 Html-Editor。很难用文字解释这个问题,所以我做了一些截图(链接在消息末尾)。

1)所以起初我只插入普通文本。
2) 在我再添加一个单词后,使用这个 javascript 函数将其包装在标签中

函数拼写错误的单词(id)
{
    var sel = rangy.getSelection();

    var highlightDiv = document.createElement('span');
    highlightDiv.className = "拼写错误";
    highlightDiv.id = "拼写错误_" + id;

    range.surroundContents(highlightDiv);

    var space = document.createTextNode("\xa0");
    highlightDiv.parentNode.insertBefore(空间,highlightDiv.nextSibling);

    range.setStartAfter(空格);
    range.setEndAfter(空格);
    sel.removeAllRanges();
    sel.setSingleRange(范围);
}

3)在我再按一次空格后。Webkit 自己选择所有文本直到“span”,我不能删除这个选择,只有再手动选择一次。

http://i.stack.imgur.com/PprG0.png - 截图

所以也许有人知道如何解决这种行为?

最好的问候
保罗

4

0 回答 0