DataTransferItem.kind

DataTransferItem.kind 是一个只读属性,它返回一个 DataTransferItem 用来表示拖拽项 (drag data item) 的类型: 一些文本或者一些文件。

语法

var itemKind = DataTransferItem.kind;

返回值

DOMString 用来表示拖拽项 (drag data item) 的类型. 它的值必须是以下值中的一个:

'file'

拖拽项是一个文件。

'string'

拖拽项是一个普通的 Unicode 字符。

示例

下面这个例子是 kind 属性的用法。

js

function drop_handler(ev) {
  console.log("Drop");
  ev.preventDefault();
  var data = event.dataTransfer.items;
  for (var 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(function (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
      var f = data[i].getAsFile();
      console.log("... Drop: File ");
    }
  }
}

规范

Specification
HTML Standard
# dom-datatransferitem-kind-dev

浏览器兼容性

BCD tables only load in the browser

参见