DataTransferItem: getAsFile()-Methode
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit November 2016 browserübergreifend verfügbar.
Wenn das Element eine Datei ist, gibt die DataTransferItem.getAsFile()-Methode das File-Objekt des Ziehdatenobjekts zurück.
Wenn das Element keine Datei ist, gibt diese Methode null zurück.
Syntax
js
getAsFile()
Parameter
Keine.
Rückgabewert
Wenn das Ziehdatenobjekt eine Datei ist, wird ein File-Objekt zurückgegeben; andernfalls wird null zurückgegeben.
Beispiele
Dieses Beispiel zeigt die Verwendung der getAsFile()-Methode in einem drop-Ereignishandler.
js
function dropHandler(ev) {
console.log("Drop");
ev.preventDefault();
for (const item of ev.dataTransfer.items) {
if (item.kind === "string" && item.type.match("^text/plain")) {
// This item is the target node
item.getAsString((s) => {
ev.target.appendChild(document.getElementById(s));
});
} else if (item.kind === "string" && item.type.match("^text/html")) {
// Drag data item is HTML
console.log("… Drop: HTML");
} else if (item.kind === "string" && item.type.match("^text/uri-list")) {
// Drag data item is URI
console.log("… Drop: URI");
} else if (item.kind === "file" && item.type.match("^image/")) {
// Drag data item is an image file
const f = item.getAsFile();
console.log("… Drop: File");
}
}
}
Spezifikationen
| Spezifikation |
|---|
| HTML> # dom-datatransferitem-getasfile-dev> |