DataTransferItem:type 属性
只读属性 DataTransferItem.type
返回代表拖动数据项的 DataTransferItem
对象的类型(格式)。type
是一个 Unicode 字符串,通常由 MIME 类型给出(虽然 MIME 类型不是必须的)。
一些示例类型:text/plain
和 text/html
。
值
一个表示拖动数据项类型的字符串。
示例
该示例演示了 type
属性的用法。
js
function dropHandler(ev) {
console.log("放置");
ev.preventDefault();
const data = ev.dataTransfer.items;
for (let i = 0; i < data.length; i += 1) {
if (data[i].kind === "string" && data[i].type.match("^text/plain")) {
// 该项目是目标节点
data[i].getAsString((s) => {
ev.target.appendChild(document.getElementById(s));
});
} else if (data[i].kind === "string" && data[i].type.match("^text/html")) {
// 拖动数据项是 HTML
console.log("放置:HTML");
} else if (
data[i].kind === "string" &&
data[i].type.match("^text/uri-list")
) {
// 拖动数据项是 URI
console.log("放置:URI");
} else if (data[i].kind === "file" && data[i].type.match("^image/")) {
// 拖动数据项是图像文件
const f = data[i].getAsFile();
console.log("……放置:文件");
}
}
}
规范
Specification |
---|
HTML Standard # dom-datatransferitem-type-dev |
浏览器兼容性
BCD tables only load in the browser