我希望这个文本在<div>
页面加载时被突出显示(选择复制)。
<div id='sample_div'>This is sample text</div>
我尝试了什么:
$(document).ready(function(){
$('#sample_div').select();
});
我希望这个文本在<div>
页面加载时被突出显示(选择复制)。
<div id='sample_div'>This is sample text</div>
我尝试了什么:
$(document).ready(function(){
$('#sample_div').select();
});
因此,如果我假设正确,您希望突出显示特定 div 中的文本..
function selectText(element) {
var doc = document
, text = doc.getElementById(element)
, range, selection
;
if (doc.body.createTextRange) { //ms
range = doc.body.createTextRange();
range.moveToElementText(text);
range.select();
} else if (window.getSelection) { //all others
selection = window.getSelection();
range = doc.createRange();
range.selectNodeContents(text);
selection.removeAllRanges();
selection.addRange(range);
}
}
基于当前浏览器的解决方案更改,我使用的是旧版本的jQuery $.browser
,但现在被删除;检查它的 IE 并使用正确的代码检查是否document.body.createTextRange
存在,例如:
$(document).ready(function () {
selectText('sample_div');
});
function selectText(element) {
var text = document.getElementById(element);
if (document.body.createTextRange) {
var range = document.body.createTextRange();
range.moveToElementText(text);
range.select();
} else {
var selection = window.getSelection();
var range = document.createRange();
range.selectNodeContents(text);
selection.removeAllRanges();
selection.addRange(range);
}
}
演示:http: //jsfiddle.net/IrvinDominin/bKPcX/