码迷,mamicode.com
首页 > 其他好文 > 详细

获取可编辑div光标位置

时间:2015-06-19 16:32:40      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:

原文:http://www.jb51.net/article/57650.htm

<html>

<body>
	<button type="button" onclick="document.getElementById(‘test‘).focus(); insertHtmlAtCaret(‘<b>INSERTED</b>‘);">插入字符</button>
	<div contentEditable="true" style="height:50px; border:2px solid red;" id="test"> </div>
</body>

<script>

function insertHtmlAtCaret(html) {

var sel, range;

if (window.getSelection) {

// IE9 and non-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);

}

}

</script>

<html>
 

  

获取可编辑div光标位置

标签:

原文地址:http://www.cnblogs.com/zxy562323273/p/4588984.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!