Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

The DataTransfer.mozGetDataAt() method is used to retrieve an item in the drag event's data transfer object, based on a given format and index. This method returns null if the specified item does not exist or if the index is not in the range from zero to the number of items minus one.

Note: This method is Gecko-specific.


mozGetDataAt(type, index)



A string representing the type of the drag data to retrieve from the drag data object.


A unsigned long representing the index of the data to retrieve.

Return value


The data item requested. If the specified item does not exist, null is returned.


This example shows the use of the mozGetDataAt() method in a drop event handler.

function drop_handler(event)
  const dt = event.dataTransfer;
  const count = dt.mozItemCount;
  output(`Items: ${count}\n`);

  for (let i = 0; i < count; i++) {
    output(` Item ${i}:\n`);
    const types = dt.mozTypesAt(i);
    for (let t = 0; t < types.length; t++) {
      output(`  ${types[t]}: `);
      try {
        const data = dt.mozGetDataAt(types[t], i);
        output(`(${typeof data}) : <${data}>\n`);
      } catch (ex) {


This method is not defined in any Web standard.

Browser compatibility

BCD tables only load in the browser

See also