首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与window.getSelection()相反

与window.getSelection()相反
EN

Stack Overflow用户
提问于 2018-09-19 13:36:53
回答 3查看 323关注 0票数 0

我正在选择使用window.getSelection().addRange(range):复制它的文本

代码语言:javascript
复制
  var targetelement = document.getElementById("someid"), 
  range = document.createRange();
  range.selectNode(targetelement);
  window.getSelection().addRange(range);
  document.execCommand('copy')

它可以工作,但是浏览器(Firefox)在代码完成后会选择标记中的文本。我怎么能不选呢?window.getSelection函数或方法有什么相反的地方吗?

EN

回答 3

Stack Overflow用户

发布于 2018-09-19 13:40:34

代码语言:javascript
复制
<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>

https://jsfiddle.net/s1teLukn/5/

票数 1
EN

Stack Overflow用户

发布于 2018-09-19 13:43:52

复制后,触发焦点模糊到此输入字段以取消文本选择。

票数 1
EN

Stack Overflow用户

发布于 2018-09-19 13:47:52

这段旧代码适用于所有浏览器:

代码语言:javascript
复制
var sel = window.getSelection ? window.getSelection() : document.selection;

if (sel) {
    if (sel.removeAllRanges) {
        sel.removeAllRanges();
    } else if (sel.empty) {
        sel.empty();
   }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52407214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档