Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Web-APIs
  3. Clipboard API

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

Clipboard API

DieClipboard-API bietet die Möglichkeit, auf Zwischenablagebefehle (Ausschneiden, Kopieren und Einfügen) zu reagieren sowie asynchron von und in die Systemzwischenablage zu lesen und zu schreiben.

Hinweis:Verwenden Sie diese API bevorzugt gegenüber der veralteten Methodedocument.execCommand(), um auf die Zwischenablage zuzugreifen.

Hinweis:Diese API istnicht verfügbar inWeb Workers (nicht überWorkerNavigator verfügbar).

Konzepte und Verwendung

DieSystemzwischenablage ist ein von dem Betriebssystem, das den Browser hostet, bereitgestellter Datenpuffer, der für die kurzfristige Datenspeicherung und/oder den Datenaustausch zwischen Dokumenten oder Anwendungen verwendet wird. Sie wird normalerweise als anonymer, temporärerDatenpuffer implementiert, manchmal alsPaste-Buffer bezeichnet, der über definierte Programmierschnittstellen von den meisten oder allen Programmen innerhalb der Umgebung zugänglich ist.

Die Clipboard-API ermöglicht es Benutzern, programmgesteuert Text und andere Datenarten in und aus der Systemzwischenablage insicheren Kontexten zu lesen und zu schreiben, sofern der Benutzer die im AbschnittSicherheitsüberlegungen beschriebenen Kriterien erfüllt hat.

Ereignisse werden als Ergebnis voncut-,copy- undpaste-Operationen ausgelöst, die die Zwischenablage verändern. Die Ereignisse haben eine Standardaktion, zum Beispiel kopiert diecopy-Aktion standardmäßig die aktuelle Auswahl in die Systemzwischenablage. Die Standardaktion kann vom Ereignishandler überschrieben werden — siehe die einzelnen Ereignisse für weitere Informationen.

Schnittstellen

ClipboardSicherer Kontext

Bietet eine Schnittstelle zum Lesen und Schreiben von Text und Daten in oder aus der Systemzwischenablage.Die Spezifikation bezeichnet dies als 'Async Clipboard API'.

ClipboardEvent

Repräsentiert Ereignisse, die Informationen über die Modifikation der Zwischenablage bereitstellen, das sind diecut-,copy- undpaste-Ereignisse.Die Spezifikation bezeichnet dies als 'Clipboard Event API'.

ClipboardItemSicherer Kontext

Repräsentiert ein einzelnes Datenformat, das beim Lesen oder Schreiben von Daten verwendet wird.

Erweiterungen zu anderen Schnittstellen

Die Clipboard-API erweitert die folgenden APIs und fügt die aufgeführten Funktionen hinzu.

Navigator.clipboardSchreibgeschütztSicherer Kontext

Gibt einClipboard-Objekt zurück, das Lese- und Schreibzugriff auf die Systemzwischenablage bietet.

Elementcopy Ereignis

Ein Ereignis, das immer dann ausgelöst wird, wenn der Benutzer eine Kopieraktion initiiert.

Elementcut Ereignis

Ein Ereignis, das immer dann ausgelöst wird, wenn der Benutzer eine Ausschneidaktion initiiert.

Elementpaste Ereignis

Ein Ereignis, das immer dann ausgelöst wird, wenn der Benutzer eine Einfügeaktion initiiert.

Sicherheitsüberlegungen

Die Clipboard-API ermöglicht es Benutzern, programmgesteuert Text und andere Datenarten in und aus der Systemzwischenablage insicheren Kontexten zu lesen und zu schreiben.

Beim Lesen von der Zwischenablage erfordert die Spezifikation, dass der Benutzer kürzlich mit der Seite interagiert hat (transiente Benutzeraktivierung) und dass der Aufruf als Ergebnis der Interaktion des Benutzers mit einem Browser- oder OS-„Paste-Element“ (wie das Auswählen von „Einfügen“ in einem nativen Kontextmenü) erfolgt. In der Praxis erlauben Browser oft Lesevorgänge, die diese Anforderungen nicht erfüllen, während sie andere Anforderungen stellen (wie eine Berechtigung oder eine Abfrage pro Vorgang).Zum Schreiben in die Zwischenablage erwartet die Spezifikation, dass der Seite diePermissions APIclipboard-write Berechtigung erteilt wurde, und der Browser kann auchtransiente Benutzeraktivierung erfordern.Browser können zusätzliche Einschränkungen für die Nutzung der Methoden zur Zugriffssteuerung der Zwischenablage festlegen.

Die Implementierungen der Browser haben sich von der Spezifikation entfernt.Die Unterschiede werden im AbschnittBrowser-Kompatibilität erfasst und der aktuelle Stand wird unten zusammengefasst:

Chromium-Browser:

  • Wenn ein Lesen laut Spezifikation nicht erlaubt ist und das Dokument den Fokus hat, wird eine Anfrage zur Nutzung der Berechtigungclipboard-read ausgelöst und erfolgreich, wenn die Berechtigung erteilt wird (entweder weil der Benutzer die Aufforderung akzeptiert hat oder weil die Berechtigung bereits erteilt wurde).
  • Schreiben erfordert entweder die Berechtigungclipboard-write oder eine transiente Aktivierung.Ist die Berechtigung erteilt, bleibt sie bestehen, und weitere transiente Aktivierungen sind nicht erforderlich.
  • Die HTTPPermissions-Policy Berechtigungenclipboard-read undclipboard-write müssen für<iframe> Elemente, die auf die Zwischenablage zugreifen, erlaubt sein.

Firefox & Safari:

  • Wird ein Lesen von der Spezifikation nicht erlaubt, aber die transiente Benutzeraktivierung wird immer noch erfüllt, wird eine Benutzeraufforderung in Form eines flüchtigen Kontextmenüs mit einer einzigen Option „Einfügen“ ausgelöst (die nach 1 Sekunde aktiviert wird) und ist erfolgreich, wenn der Benutzer die Option wählt.
  • Schreiben erfordert eine transiente Aktivierung.
  • Die Einfügeaufforderung wird unterdrückt, wenn auf Inhalte der selben Herkunft in der Zwischenablage zugegriffen wird, jedoch nicht bei fremden Inhalten.
  • Dieclipboard-read undclipboard-write Berechtigungen werden von Firefox oder Safari nicht unterstützt (und es ist nicht geplant, sie zu unterstützen).

FirefoxWeb-Erweiterungen:

  • Das Lesen von Text ist nur für Erweiterungen mit der Web-ErweiterungclipboardRead Berechtigung verfügbar.Mit dieser Berechtigung erfordert die Erweiterung keine transiente Aktivierung oder Einfügeaufforderung.
  • Das Schreiben von Text ist im sicheren Kontext und mit transiente Aktivierung verfügbar.Mit der Web-ErweiterungclipboardWrite Berechtigung ist keine transiente Aktivierung erforderlich.

Beispiele

Zugriff auf die Zwischenablage

Auf die Systemzwischenablage wird über das globaleNavigator.clipboard zugegriffen.

Dieses Beispiel holt den Text von der Zwischenablage und fügt ihn dem ersten Element hinzu, das mit der Klasseeditor gefunden wird. DareadText() einen leeren String zurückgibt, wenn die Zwischenablage keinen Text enthält, ist dieser Code sicher.

js
navigator.clipboard  .readText()  .then(    (clipText) => (document.querySelector(".editor").innerText += clipText),  );

Spezifikationen

Specification
Clipboard API and events
# clipboard-interface
Clipboard API and events
# clipboard-event-interfaces
Clipboard API and events
# clipboarditem

Browser-Kompatibilität

api.Clipboard

api.ClipboardEvent

api.ClipboardItem

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp