首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“文本复制”功能不起作用。帮帮我

“文本复制”功能不起作用。帮帮我
EN

Stack Overflow用户
提问于 2022-11-26 11:17:58
回答 1查看 53关注 0票数 1

我有这样的代码,有时起作用,有时不起作用。我不太关心这些话题,但我需要修复它。你能帮我解决我的问题吗?

这段代码

代码语言:javascript
复制
function CopyToClipboard(containerid){if(document.selection)
{var range=document.body.createTextRange();range.moveToElementText(document.getElementById(containerid));range.select().createTextRange();document.execCommand("copy");}
else if(window.getSelection){var range=document.createRange();range.selectNode(document.getElementById(containerid));window.getSelection().addRange(range);
document.execCommand("copy");$("#text-3").fadeIn().delay(2000).fadeOut()}}
function myFunction(){var copyText=document.getElementById("myInput");copyText.select();copyText.setSelectionRange(0,99999);document.execCommand("copy");$("#text-2").fadeIn().delay(2000).fadeOut();}

html

代码语言:javascript
复制
<button name="copy text" onclick="CopyToClipboard('div1')"></button>
<div id="div1"><h3>my text</h3><br></div>

<div id="text-2">notif 2</div>
<div id="text-3">notif 3</div>

我正在为本例寻找一种最新的代码,不同的浏览器对此代码没有问题,我将在这里发布代码。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-26 12:02:23

试试下面的样子,

代码语言:javascript
复制
function copyToClipboard() {
    navigator.clipboard.writeText(document.getElementById('div1').innerText);
    //alert('data copied');
    document.getElementById('messageis').style.display = "block";
    setTimeout(function() {
      document.getElementById('messageis').style.display = "none";
  }, 3000);
  
}
代码语言:javascript
复制
  #messageis
  {
    display: none;
    background: red;
    padding: 10px;  
    position: absolute;
    bottom: 10px;
    left:30%;

  }
代码语言:javascript
复制
<button name="copy text" onclick="copyToClipboard()">Copy</button>
<div><h3 class="rt rt-13 rt-medium" id="div1">my text</h3><br></div>
<div id="messageis">Code Copied</div>

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74581688

复制
相关文章

相似问题

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