Javascriptでクリップボードにテキストコピーする
TL;DR
const text = 'コピーするテキスト'; const textarea = document.createElement('textarea'); textarea.style.position = 'fixed'; textarea.style.opacity = 0; textarea.value = text; document.body.appendChild(textarea); textarea.select(); document.execCommand('Copy'); document.body.removeChild(textarea);
解説
コピーするテキストが入力されたtextareaを生成してDOMに追加 ※ 改行を含まないならtextareaでなくinput[type=text]でも可能
const text = 'コピーするテキスト'; const textarea = document.createElement('textarea'); textarea.style.position = 'fixed'; textarea.style.opacity = 0; textarea.value = text; document.body.appendChild(textarea);
textareaを選択させexecCommandを使いコピーさせる
textarea.select(); document.execCommand('Copy');
使い終わったtextareaをDOMから削除
document.body.removeChild(textarea);