DataTransferItem: kind-Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Die schreibgeschützte DataTransferItem.kind-Eigenschaft gibt den Typ–einen String oder eine Datei–des DataTransferItem-Objekts zurück, das das Drag-Datenobjekt darstellt.

Wert

Ein String, der den Typ des Drag-Datenobjekts repräsentiert. Er muss einer der folgenden Werte sein:

'file'

Wenn das Drag-Datenobjekt eine Datei ist.

'string'

Wenn das Drag-Datenobjekt eine einfache Unicode-Zeichenkette ist.

Beispiele

Dieses Beispiel zeigt die Verwendung der kind-Eigenschaft.

js
function dropHandler(ev) {
  console.log("Drop");
  ev.preventDefault();
  const data = event.dataTransfer.items;
  for (let i = 0; i < data.length; i += 1) {
    if (data[i].kind === "string" && data[i].type.match("^text/plain")) {
      // This item is the target node
      data[i].getAsString((s) => {
        ev.target.appendChild(document.getElementById(s));
      });
    } else if (data[i].kind === "string" && data[i].type.match("^text/html")) {
      // Drag data item is HTML
      console.log("… Drop: HTML");
    } else if (data[i].kind === "file" && data[i].type.match("^image/")) {
      // Drag data item is an image file
      const f = data[i].getAsFile();
      console.log("… Drop: File");
    }
  }
}

Spezifikationen

Specification
HTML Standard
# dom-datatransferitem-kind-dev

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch