要添加的内容不多。此按钮以前有效。它将复制其中的代码。现在,每按一次value="#code"
就会向用户显示但不会复制吗?
<input type="text" class="buttontxt" value="#Code" id="code" disabled>
<button class="button copy" onclick="myFunction()">Copy Code</button>
<script>
function myFunction() {
var copyText = document.getElementById("code");
copyText.select();
document.execCommand("copy");
alert("Copied the code: " + copyText.value);
}
</script>
不知道为什么这突然发生了。在所有浏览器和移动设备中均已损坏。如果有人因为我一无所知而可以再次进行这项工作,将不胜感激。
答案 0 :(得分:0)
某些命令需要一个值才能完成。
document.execCommand(命令,showUI,值)
您需要传递值。
答案 1 :(得分:0)
问题似乎在于您的input
元素是disabled
。有关更多说明,请参见this Stack Overflow post,但您应将disabled
属性更改为readonly
,以便您的select()
调用实际上可以选择文本。现在,由于从未选择文本,因此调用document.execCommand("copy")
时没有任何内容可复制,但是由于JS可访问该文本,因此按预期在alert
对话框中显示该文本,因此行为差异。这是您的代码的有效版本:
<input type="text" class="buttontxt" value="#Code" id="code" readonly>
<button class="button copy" onclick="myFunction()">Copy Code</button>
<script>
function myFunction() {
var copyText = document.getElementById("code");
copyText.select();
document.execCommand("copy");
alert("Copied the code: " + copyText.value);
}
</script>