jsでクリップボードにコピーするボタンを実装する

公開日時
更新日時

inputフォームの内容をコピーする際に、コピーボタンを押したらクリップボードにコピーできるようにしたかったので対応方法を調べた。

IEをサポートしなくて良い環境だったので、「Clipboard.writeText()」を使うと手軽に対応できた。

<body>
  <input readonly id="copy" type="text" value="something long text" />
  <button onclick="copyToClipboard()">
    Copy to Clipboard
  </button>

  <script type="text/javascript">
    const copyToClipboard = () => {
      const textarea = document.getElementById("copy");
      navigator.clipboard.writeText(textarea.value).then(() => {
        console.log("copied");
      });
    };
  </script>
</body>

Related #js

AWS SESの受信メールを暗号化してs3に保存しLambdaで読み込む

jsの場合、複合処理を独自実装する必要がある

Next.jsのPreview Mode時はAnalyticsを無効化する

cookieの__next_preview_dataキーで判定

Next.js 11

手軽にアップグレードできた

VSCode Remoteで新規ファイルを作った際にTypescriptのPathが認識されない問題

「Ctrl + Shift + P」でコマンドパレットを開いて「Reload Window」を実行