<div contentEditable="true" style="height:50px; border:2px solid red;" id="divTest"> </div>
<script type="text/javascript">
function insertAtCursor(dom, html) {
if (dom != document.activeElement) { // 如果dom没有获取到焦点,追加
dom.innerHTML = dom.innerHTML + html;
return;
}
var sel, range;
if (window.getSelection) {
// IE9 或 非IE浏览器
sel = 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 selection
if (lastNode) {
range = range.cloneRange();
range.setStartAfter(lastNode);
range.collapse(true);
sel.removeAllRanges();
sel.addRange(range);
}
}
} else if (document.selection && document.selection.type != "Control") {
// IE < 9
document.selection.createRange().pasteHTML(html);
}
}
setInterval(function(){
insertAtCursor(document.getElementById('divTest'), 'I');
}, 3000);
</script>
DIV可编辑模式在光标位置插入内容
1星 需积分: 38 28 浏览量
2019-06-10
01:14:04
上传
评论
收藏 956B ZIP 举报
weixin_38669628
- 粉丝: 383
- 资源: 6万+