подскажите и execCommand - PullRequest
       31

подскажите и execCommand

0 голосов
/ 19 февраля 2019

если я прокомментирую строку 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();

1 Ответ

0 голосов
/ 19 февраля 2019

.execCommand() Должен быть в обработчике событий

Использовать .val() для элементов управления формы, но .attr() также будет работать.В демоверсии остальная часть вашего кода не будет работать без обработчика событий.См. Использование .execCommand();.

Демо

Подробности прокомментированы в демо

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>
...