web関連

【javascript】クリックしたらコピーをさせる方法

クリックしたらコピーってどうやって実装するんだろうと思った時の備忘録

クリックしたらコピーの機能の実装方法

execCommandを使って実装する

<input id="input" type="text" value="コピー対象の文言">
<button id="copy">Copy</button>

<script>
function copy() {
  var copyTarget = document.querySelector("#input");// コピー対象の要素を取得
  copyTarget.select();// テキストを取得
  console.log(copyTarget);// input内のテキストを選択状態にする
  document.execCommand("copy");// クリップボードにコピー
}
document.querySelector("#copy").addEventListener("click", copy);
</script>

どういう挙動しているの気になって調べたんだけど

copyTarget.select()でテキストをマウスカーソルを使って選択(青反転)状態にしてdocument.execCommand("copy")でコピー(Ctr+C)の機能をjavascriptでやっているだけみたい

copyTarget.select()の後にdocument.execCommand("copy")が来たから繋がりが見えなくて、どこかに値を保存していると思ってた

button要素にonclickで関数を書くやり方もあるんだけど、関数名を変える時とかhtmlとjsファイルを修正する必要性があるからあまりお勧めしないみたい

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。