const selection = document.getSelection()
if (selection.type === 'Range' || selection.type === 'Caret') {
const text = ' **' + selection.toString() + '** '
const range = selection.getRangeAt(0)
range.deleteContents()
const element = document.createElement('div')
element.innerHTML = text
const frag = document.createDocumentFragment()
const node = frag.appendChild(element.firstChild)
range.insertNode(frag)
if(node){
const range2 = range.cloneRange()
range2.setStartAfter(node)
range2.collapse(true)
selection.removeAllRanges()
selection.addRange(range2)
}
}
else {
console.error('未选中内容')
}
js div contenteditable插入内容并设置光标位置
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- function pasteHtmlAtCaret(html) { var sel, range; if ...
- js/jquery 按住鼠标左键圈选网格,圈选网格颜色变深, 圈选区域不可重叠,被选中的网格位置上填充可输入内容,...