[英]document.execCommand("copy") not working on all browser
<input id="test" value="Test" disabled />
<a onclick="copy()">Button</a>
function copy(){
var text = document.getElementById("test");
text.select();
document.execCommand("copy");
console.log("Copied the text: " + text.value);
}
我有上述功能来复制我的副本。 但它不起作用。
您的代码存在一些问题:
disable
属性实际上必须被disabled
disabled
时,您无法选择其文本以复制它,因此您可能希望在这种情况下使用readonly
或通过navigator.clipboard.writeText(text.value)
手动设置text.value
function copy(){ var text = document.getElementById("test"); // set arbitrary value instead of current selection // to clipboard to make it work with a disabled input as well navigator.clipboard.writeText(text.value); // text.select(); //document.execCommand("copy"); console.log("Copied the text: " + text.value); } function copy2(){ var text = document.getElementById("test2"); text.select(); document.execCommand("copy"); console.log("Copied the text: " + text.value); }
<input id="test" value="Test" disabled /> <a onclick="copy()">Button</a> <hr> <h3>using <code>document.execCommand("copy")</code></h3> <input id="test2" value="Test2" readonly /> <a onclick="copy2()">Button</a>
你可以使用这个clipboard.js库。 它有很好的浏览器支持。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.