ググってもダミーのtextareaを使う方法ばかりが引っかかったのでメモ兼
ES5使っていいかどうか知らない環境でとりあえずコードだけ書くという奇特なシチュエーションで作ったものなので、ES5未満
よく調べてないけど標準的なAPIしか使っていないのでどのブラウザでも動くはず。少なくともモダンブラウザでは。
var copyText = 'コピーさせたいテキスト';
document.addEventListener('copy', function handler(clipboardEvent) {
clipboardEvent.preventDefault();
clipboardEvent.clipboardData.setData('text/plain', copyText);
document.removeEventListener('copy', handler); // 毎度消さないと他の文字列がコピーできなくなる
});
if (document.execCommand('copy')) {
alert('コピーしました:\n' + copyText);
} else {
alert('コピー失敗:\n' + copyText);
}
これをボタンのオンクリックイベント等に入れておけば動くと思います