此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

DataTransferItem

基线
广泛可用
*

自 2016年11月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

* 此特性的某些部分的支持程度可能有所不同。

DataTransferItem 对象表示一个拖动数据项。在一个拖动操作中,每一个 DragEvent 都有包含存有拖动数据项的列表 的 dataTransfer 属性,其中每一项都是一个 DataTransferItem 对象。

DataTransferItem 主要旨在服务 HTML 拖放 API,它在 HTML 拖放一节中得到定义,但也用于其他 API,如 ClipboardEvent.clipboardData 和 InputEvent.dataTransfer。DataTransferItem 的文档将主要讨论拖放操作中该对象的使用方式。你应该参考相应 API 的文档以了解在其他上下文环境中 DataTransferItem 的使用方式。

这个接口没有构造函数。

实例属性

DataTransferItem.kind 只读

拖动数据项的种类,可以是 string 或 file。

DataTransferItem.type 只读

拖动数据项的类型,通常是 MIME 类型。

实例方法

DataTransferItem.getAsFile()

返回一个关联拖动数据项的 File 对象(当拖动项不是一个文件时返回 null)。

DataTransferItem.getAsFileSystemHandle()

返回一个 Promise,其在拖动项为文件时将兑现为 FileSystemFileHandle,而在拖动项为目录时将兑现为 FileSystemDirectoryHandle。

DataTransferItem.getAsString()

使用拖动数据项的字符串作为参数执行指定回调函数。

DataTransferItem.webkitGetAsEntry()

返回一个基于 FileSystemEntry 的对象来表示文件系统中选中的项目。这通常是一个 FileSystemFileEntry 或 FileSystemDirectoryEntry 对象。

示例

这个接口所有的属性和方法都有自己的参考页,请到各自的参考页中查看用法示例。

规范

规范
HTML
# the-datatransferitem-interface

浏览器兼容性