我试图谷歌这个问题,但谷歌不知道这个问题。 我正在使用Qt 4.8.1 QtWebkit 2.2.3 + Javascript来实现某种Html-Editor。 很难用文字来解释这个问题,所以我会给你一些截图(链接在消息的末尾)。
1)所以首先我只插入普通文本 2)在我添加一个单词后,使用此javascript函数将其包装在标签中
function misspelledWord(id) { var sel = rangy.getSelection(); var highlightDiv = document.createElement('span'); highlightDiv.className = "misspelled"; highlightDiv.id = "misspelled_" + id; range.surroundContents( highlightDiv ); var space = document.createTextNode("\xa0"); highlightDiv.parentNode.insertBefore(space, highlightDiv.nextSibling); range.setStartAfter(space); range.setEndAfter(space); sel.removeAllRanges(); sel.setSingleRange(range); }
3)再按一次空格后。 Webkit选择所有文本直到“span”自己,我不能删除此选择,只有再次手动选择它。
http://i.stack.imgur.com/PprG0.png - 屏幕截图
所以也许有人知道如何解决这个问题?
祝你好运
保罗