DataTransferItem.type

The read-only DataTransferItem.type property returns the type (format) of the DataTransferItem object representing the drag data item. The type is a Unicode string generally given by a MIME type, although a MIME type is not required.

Some example types are: text/plain and text/html.

Syntax

dataItem.type;

Return value

A DOMString representing the drag data item's type.

Example

This example shows the use of the type property.

function drop_handler(ev) {
 console.log("Drop");
 ev.preventDefault();
 var data = ev.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 == 'string') &&
              (data[i].type.match('^text/uri-list'))) {
     // Drag data item is URI
     console.log("... Drop: URI");
   } 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 ");
   }
 }
}

Specifications

Specification Status Comment
HTML Living Standard
The definition of 'type' in that specification.
Living Standard Initial version
HTML 5.1
The definition of 'type' in that specification.
Recommendation Snapshot of the HTML WHATWG document

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
typeChrome Full support 11Edge Full support 12Firefox Full support 50IE No support NoOpera Full support 12Safari Full support 5.1WebView Android Full support 4Chrome Android Full support 18Firefox Android Full support 50Opera Android No support NoSafari iOS Full support 5Samsung Internet Android Full support 1.0

Legend

Full support
Full support
No support
No support

See also