我一直在努力使 textarea 的selectionStart和selectionEnd属性与contenteditable div 元素一起工作。我在 google 和 SO 上查看了很多相关文章,但无济于事。我有类似于以下内容的内容,非常适用于 textarea。但我希望这个可以与 contenteditable div 一起使用。
function replaceVal(node, val, step){
//...
var cursorLoc = node.selectionStart;
node.value = node.value.substring(0, node.selectionStart - step) + value +
node.value.substring(node.selectionEnd, node.value.length);
node.scrollTop = scrollTop;
node.selectionStart = cursorLoc + value.length - step;
node.selectionEnd = cursorLoc + value.length - step;
//...
}
如何修改它以使其与 contenteditable div 元素而不是 textarea 一起使用?