ClipboardItem: supports() statische Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Die statische Methode supports() der ClipboardItem-Schnittstelle gibt true zurück, wenn der angegebene MIME-Typ vom Clipboard unterstützt wird, andernfalls false.

Beachten Sie, dass die Clipboard API die Unterstützung für Klartext, HTML und PNG-Dateien vorschreibt. Die supports()-Methode gibt für diese MIME-Typen immer true zurück, daher ist es unnötig, sie zu testen.

Syntax

js
supports(type)

Parameter

type

Ein String, der den zu testenden MIME-Typ angibt.

Diese MIME-Typen werden immer unterstützt:

  • text/plain
  • text/html
  • image/png

Diese MIME-Typen werden möglicherweise unterstützt:

  • image/svg+xml
  • Benutzerdefinierte MIME-Typ-Formate, die mit "web " beginnen. Der benutzerdefinierte Typ (ohne das Präfix "web ") muss das richtige Format für einen MIME-Typ haben.

Rückgabewert

true, wenn der angegebene MIME-Typ vom Clipboard unterstützt wird, andernfalls false.

Beispiele

Ein Bild in die Zwischenablage schreiben

Das folgende Beispiel ruft ein SVG-Bild ab, stellt es als Blob dar und schreibt es dann in die Zwischenablage.

Wir verwenden supports(), um zu überprüfen, ob der MIME-Typ "image/svg+xml" vom Clipboard unterstützt wird, bevor wir das Bild abrufen und es mit clipboard.write() schreiben. Wir umgeben auch den gesamten Funktionskörper mit einer try...catch-Anweisung, um andere Fehler abzufangen, beispielsweise wenn ClipboardItem selbst nicht unterstützt wird.

js
async function writeClipImg() {
  try {
    if (ClipboardItem.supports("image/svg+xml")) {
      const imgURL = "/my-image.svg";
      const data = await fetch(imgURL);
      const blob = await data.blob();
      await navigator.clipboard.write([
        new ClipboardItem({
          [blob.type]: blob,
        }),
      ]);
      console.log("Fetched image copied to clipboard.");
    } else {
      console.log("SVG image not supported by clipboard");
    }
  } catch (err) {
    console.error(err.name, err.message);
  }
}

Spezifikationen

Specification
Clipboard API and events
# dom-clipboarditem-supports

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
supports() static method

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
In development. Supported in a pre-release version.
In development. Supported in a pre-release version.
No support
No support

Siehe auch