如何解决使用超时时,document.execCommand“ copy”无法正常工作
如问题标题所述,我在应用程序中使用window.setTimout
。这是详细的说明。当用户单击按钮时,我调用一个函数,将需要复制的值传递到剪贴板,在30秒后,我需要清除剪贴板。在搜索互联网时,我发现无法清除剪贴板数据,因此我正在调用另一个函数来选择和复制“空白”值。这是代码。
function copyToClipboard(value,e){
var abc = document.createElement("input");
abc.setAttribute("value",value);
document.body.appendChild(abc);
abc.select();
document.execCommand("copy");
document.body.removeChild(abc);
setTimeout(clearClipboard,30000);
}
function clearClipboard(){
var def = document.createElement("input");
def.setAttribute("value",' ');
document.body.appendChild(def);
def.select();
document.execCommand("copy");
document.body.removeChild(def);
console.log('clipboard cleared!');
}
执行此代码时,传递的值将按预期复制到剪贴板,但是30秒钟后,clearClipboard方法未按预期清空剪贴板。还有一件事!当我将计时器设置为3秒时,它突然开始按预期工作并清除了剪贴板!帮助!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。