1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > js中获取光标所在位置并插入内容

js中获取光标所在位置并插入内容

时间:2018-12-10 12:30:55

相关推荐

js中获取光标所在位置并插入内容

关于selection和range的一些认识

原文链接:/p/44970200

相关代码

function insertContent() {let contentHtml = '<p>插入一个p标签</p>';// console.log(imgHtml);insertHtmlAtCaret(contentHtml);}function insertHtmlAtCaret(html) {var sel, range;if (window.getSelection) {// IE9 and non-IEsel = window.getSelection();if (sel.getRangeAt && sel.rangeCount) {range = sel.getRangeAt(0);range.deleteContents();// Range.createContextualFragment() would be useful here but is// non-standard and not supported in all browsers (IE9, for one)var el = document.createElement("div");el.innerHTML = html;var frag = document.createDocumentFragment(), node, lastNode;while ( (node = el.firstChild) ) {lastNode = frag.appendChild(node);}range.insertNode(frag);// Preserve the selectionif (lastNode) {range = range.cloneRange();range.setStartAfter(lastNode);range.collapse(true);sel.removeAllRanges();sel.addRange(range);}}} else if (document.selection && document.selection.type != "Control") {// IE < 9document.selection.createRange().pasteHTML(html);}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。