JavaScript-使用js怎样自动选中页面中的一段文字

项目合作 项目合作 主题:1030 回复:2135

JavaScript-使用js怎样自动选中页面中的一段文字

晚风撩人 发布于 2017-01-06 字数 121 浏览 1023 回复 2

我的页面中有一段文字是放在span里显示的,我想实现点击一个按钮,js就自动选中这段文字,请问怎么实现?要求兼容性好一些

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(2

瑾兮 2017-10-21 2 楼

<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="selectable">http://example.com/page.htm&lt;/span&gt;
<input type="button" onclick="selectText()" value="按钮" />

虐人心 2017-05-22 1 楼

一下是给你一个jquery版的
测试IE、FF、360、chrome、opera、搜狗

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE><meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</HEAD>
<SCRIPT LANGUAGE="JavaScript" src="jquery-1.4.2.min.js"></SCRIPT>
<BODY>
<div onclick="SelectText('myDiv')">点击选中</div>
<span id="myDiv">
测试选中内容
</span>
<script>
function SelectText(element) {
var text = document.getElementById(element);
if ($.browser.msie) {
var range = document.body.createTextRange();
range.moveToElementText(text);
range.select();
} else if ($.browser.mozilla || $.browser.opera) {
var selection = window.getSelection();
var range = document.createRange();
range.selectNodeContents(text);
selection.removeAllRanges();
selection.addRange(range);
} else if ($.browser.safari) {
var selection = window.getSelection();
selection.setBaseAndExtent(text, 0, text, 1);
}
}
</script>
</BODY>
</HTML>