我正在选择使用window.getSelection().addRange(range):复制它的文本
var targetelement = document.getElementById("someid"),
range = document.createRange();
range.selectNode(targetelement);
window.getSelection().addRange(range);
document.execCommand('copy')它可以工作,但是浏览器(Firefox)在代码完成后会选择标记中的文本。我怎么能不选呢?window.getSelection函数或方法有什么相反的地方吗?
发布于 2018-09-19 13:40:34
<div id="someid">
This is a test man
</div>
<div id="empty">
</div>
<script>
var targetelement = document.getElementById("someid");
var range = document.createRange();
range.selectNode(targetelement);
window.getSelection().addRange(range);
document.execCommand('copy');
window.getSelection().removeAllRanges();
</script>发布于 2018-09-19 13:47:52
这段旧代码适用于所有浏览器:
var sel = window.getSelection ? window.getSelection() : document.selection;
if (sel) {
if (sel.removeAllRanges) {
sel.removeAllRanges();
} else if (sel.empty) {
sel.empty();
}
}https://stackoverflow.com/questions/52407214
复制相似问题