--- title: Navigator.clipboard slug: Web/API/Navigator/clipboard tags: - API - Clipboard - Navigator - Property - Read-only - Reference - クリップボード - コピー - プロパティ - 切り取り - 貼り付け translation_of: Web/API/Navigator/clipboard ---
Clipboard API は {{domxref("Navigator")}} インターフェイスに読み取り専用の clipboard
プロパティを追加し、クリップボードの内容を読み書きするために使用する {{domxref("Clipboard")}} オブジェクトを返します。 Clipboard API は切り取り、コピー、貼り付け機能をウェブアプリケーションに実装するために使用することができます。
非同期のクリップボード読み書きメソッドを使用するには、ユーザーがウェブサイトやアプリにクリップボードへのアクセスを許可する必要があります。この許可は Permissions API から、 "clipboard-read"
や "clipboard-write"
の権限を取得する必要があります。
theClipboard = navigator.clipboard;
システムのクリップボードにアクセスするために使用される {{domxref("Clipboard")}} オブジェクトです。
以下のコードは、クリップボードの内容を読み取る目的でシステムのクリップボードにアクセスするため、 navigator.clipboard
を使用します。
navigator.clipboard.readText().then( clipText => document.querySelector(".cliptext").innerText = clipText);
このスニペットは、クラスが "cliptext"
の要素の内容を、クリップボードのテキストコンテンツで置き換えます。おそらくこのコードは現在のクリップボードの内容を表示するブラウザー拡張機能に使用されているもので、定期的または特定のイベントが発火したときに自動的に更新されます。
クリップボードが空であるか、テキストが含まれていない場合、 "cliptext"
の要素の内容はクリアされます。これは、クリップボードが空かテキストが含まれていない場合、 {{domxref("Clipboard.readText", "readText()")}} が空文字列を返すからです。
仕様書 | 状態 | 備考 |
---|---|---|
{{SpecName('Clipboard API','#navigator-clipboard','navigator.clipboard')}} | {{Spec2('Clipboard API')}} | 初回定義 |
{{Compat("api.Navigator.clipboard")}}