Javascript选中文字【兼容所有浏览器】
选中非文本框的HTML元素:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<script type="text/javascript">
function selectText() {
if (document.selection) {
var range = document.body.createTextRange();
range.moveToElementText(document.getElementById('selectable'));
range.select();
} else if (window.getSelection) {
var range = document.createRange();
range.selectNode(document.getElementById('selectable'));
window.getSelection().addRange(range);
}
}
</script>
<span id="selectable1">http://example.com/page.htm</span>
<input id="selectable" type="text" value="fsaffsdfd"/>
<input type="button" onclick="selectText()" value="按钮" />
</body>
</html>
选中文本框中的元素:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<textarea id="o"></textarea>
<input type="button" value="aaaa" onclick="setSelectText(document.getElementById('o'),3,5)" />
<script>
function setSelectText(el,start,end){
if(el.createTextRange){
var Range=el.createTextRange();
Range.collapse();
Range.moveEnd('character',end);
Range.moveStart('character',start);
Range.select();
}
if(el.setSelectionRange){
el.focus();
el.setSelectionRange(start,end); //设光标
}
}
</script>
</body>
</html>