我一直在寻找答案,但没有成功。
是否有跨浏览器的解决方案来替换 contenteditable div 中的选定文本?
我只是希望用户突出显示一些文本并将突出显示的文本替换为 xxxxx
。
最佳答案
以下将在所有主要浏览器中完成工作:
function replaceSelectedText(replacementText) {
var sel, range;
if (window.getSelection) {
sel = window.getSelection();
if (sel.rangeCount) {
range = sel.getRangeAt(0);
range.deleteContents();
range.insertNode(document.createTextNode(replacementText));
}
} else if (document.selection && document.selection.createRange) {
range = document.selection.createRange();
range.text = replacementText;
}
}
关于javascript - 替换 contenteditable div 中的选定文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3997659/