我试图理解为什么这段代码不起作用。
我想要完成的是将当前网址复制到剪贴板中,所以作为一种解决方法,我尝试创建一个隐藏的输入,我在其中传递当前位置,但我没有运气。
这是我迄今为止尝试过的一个例子:
var copyBtn = document.querySelector('#copy_btn');
copyBtn.addEventListener('click', function () {
var input = document.createElement('input');
input.style.display = "none";
input.setAttribute('value', document.location)
document.body.appendChild(input);
// select the contents
input.select();
document.execCommand('copy');
}, false);
<input id="copy_btn" type="button" value="copy">
答案 0 :(得分:2)
您只能在用户操作上触发copy
命令(按键,点击输入等...)。
在此处查看更多信息:https://developers.google.com/web/updates/2015/04/cut-and-copy-commands?hl=en
想象一下,如果您打开一个网站,它会自动覆盖您的剪贴板,而不会做任何事情,从而带来安全隐患。
因此,您应该添加一个按钮以“将URL复制到剪贴板”并在该按钮的单击处理程序中使用document.execCommand
。
LE:我刚刚向你发现了一个类似的问题并将其标记为重复。