-
execCommandを使用する方法:
function copyToClipboard(text) { var dummy = document.createElement("textarea"); document.body.appendChild(dummy); dummy.value = text; dummy.select(); document.execCommand("copy"); document.body.removeChild(dummy); }
この方法では、テキストを一時的にテキストエリアに設定し、選択してコピー操作を実行します。
-
Clipboard APIを使用する方法 (モダンな方法):
function copyToClipboard(text) { navigator.clipboard.writeText(text) .then(function() { console.log("テキストがクリップボードにコピーされました"); }) .catch(function(err) { console.error("クリップボードへのコピーに失敗しました:", err); }); }
この方法では、
navigator.clipboard.writeText()
関数を使用してテキストをクリップボードにコピーします。この方法は最新のWebブラウザでサポートされています。 -
ライブラリを使用する方法: さまざまなJavaScriptライブラリがクリップボードへのコピーを簡単に実現するために提供されています。例えば、"clipboard.js"というライブラリを使用する場合は、以下のようにコードを記述できます:
<button class="btn" data-clipboard-text="コピーするテキスト">コピー</button> <script src="clipboard.min.js"></script> <script> var clipboard = new ClipboardJS('.btn'); clipboard.on('success', function(e) { console.log("テキストがクリップボードにコピーされました"); e.clearSelection(); }); clipboard.on('error', function(e) { console.error("クリップボードへのコピーに失敗しました:", e.action); }); </script>
この方法では、"clipboard.js"ライブラリを使用して、特定の要素をクリックするとテキストがクリップボードにコピーされるように設定しています。
これらはいくつかの一般的な方法ですが、さまざまな状況に応じて適切な方法を選択することが重要です。また、ブラウザの互換性にも注意してください。