如果我注释第1行,并取消第2行的注释,则此代码可以正常工作。提示符有什么问题?
let parte = prompt("What is your name?"); //line 1
//let parte = "Batman"; // line 2
let documents = "bla bla bla";
let $dummy = $("<input>");
$dummy.attr("value", parte+ " " + documents);
$("body").append($dummy);
$dummy.select();
document.execCommand("copy");
$dummy.remove();
发布于 2019-02-19 14:16:08
.execCommand()
需要在事件处理程序中
对表单控件使用.val()
,但.attr()
也可以工作。在演示中,如果没有事件处理程序,代码的其余部分将无法工作。请参阅 。
演示
在演示中评论的详细信息
let parte = prompt("What is your name?");
let documents = "bla bla bla";
let $dummy = $("<input>");
// Use .val() for input values is better either one will work.
$dummy.val(parte + " " + documents);
//$dummy.attr("value", parte+ " " + documents);
$("body").append($dummy);
// You need to make an event handler
function copy() {
$dummy.select();
document.execCommand("copy");
$dummy.remove();
}
$('.copy').on('click', copy);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button class='copy'>Copy</button>
<fieldset class='edit' contenteditable>
Paste Here
</fieldset>
https://stackoverflow.com/questions/54758367
复制相似问题