クリップボード API
クリップボード API は、クリップボードのコマンド (切り取り、コピー、貼り付け) に応答する機能や、システムクリップボードの非同期の読み取りや書き込みを行う機能を提供します。クリップボードの内容へのアクセスは、 Permissions API によって制限されています。ユーザーの許可がなければ、クリップボードの内容の読み取りや変更は許可されません。
この API は、 document.execCommand()
を使用したクリップボードへのアクセスに取って代わるように設計されています。
クリップボードへのアクセス
Clipboard
オブジェクトをインスタンス化して生成するのではなく、システムクリップボードにはグローバル変数の Navigator.clipboard
を通してアクセスすることができます。
navigator.clipboard.readText().then(
clipText => document.querySelector(".editor").innerText += clipText);
このスニペットはクリップボードからテキストを読み取り、最初に見つかった editor
クラスを持つ要素に追加します。 readText()
(および場合によっては read()
) はクリップボードにテキストがないときには空文字列を返すので、このコードは安全です。
インターフェイス
Clipboard
安全なコンテキスト用- システムクリップボードに対してテキストやデータを読み書きするインターフェイスを提供します。これは仕様書では 'Async Clipboard API' と呼ばれています。
ClipboardEvent
安全なコンテキスト用- クリップボードの変更に関する情報を提供するイベント、すなわち
cut
,copy
,paste
イベントを表します。これは仕様書では 'Clipboard Event API' と呼ばれています。
仕様書
仕様書 | 状態 | 備考 |
---|---|---|
Clipboard API and events | 草案 | 初回定義 |
ブラウザーの互換性
関連情報
Clipboard
If you're able to see this, something went wrong on this page.
ClipboardEvent
If you're able to see this, something went wrong on this page.