可以通过以下方法在光标位置插入文字:
function insertTextAtCursor(text) { var sel, range, textNode; if (window.getSelection) { sel = window.getSelection(); if (sel.getRangeAt && sel.rangeCount) { range = sel.getRangeAt(0); range.deleteContents(); textNode = document.createTextNode(text); range.insertNode(textNode); range.setStart(textNode, 0); range.setEnd(textNode, textNode.length); sel.removeAllRanges(); sel.addRange(range); } } else if (document.selection && document.selection.createRange) { range = document.selection.createRange(); range.text = text; } }
调用该方法时,需要传入需要插入的文本作为参数:
insertTextAtCursor("需要插入的文本");