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.mozSetDataAt() method is used to add data to a specific index in the drag event's data transfer object.
A data transfer may store multiple items, each at a given zero-based index. mozSetDataAt() may only be called with an index argument less than mozItemCount in which case an existing item is modified, or equal to mozItemCount in which case a new item is added, and the mozItemCount is incremented by one.
Data should be added in order of preference, with the most specific format added first and the least specific format added last. If data of the given format already exists, it is replaced in the same position as the old data.
The data should be either a string, a Boolean or number type (which will be converted into a string) or an nsISupports.
Syntax
void dataTransfer.mozSetDataAt([type], data, index);
Arguments
- type
- A
stringrepresenting the type of the drag data to add to thedrag data object. - data
- A
nsIVariantrepresenting the data to add to thedrag data object. - index
- A
unsigned longrepresenting the index of the data to add.
Return value
- void
Example
This example shows the use of the mozSetDataAt() method in a dragstart handler.
function dragstart_handler(event)
{
var dt = event.dataTransfer;
var idx = dt.mozItemCount;
// Add two new items to the drag transfer
if (idx >= 0) {
dt.mozSetDataAt("text/uri-list","http://www.example.com/", idx);
dt.mozSetDataAt("text/html", "Hello World", idx+1);
}
}
Specifications
This method is not defined in any Web standard.
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|
| No support | No support | (Yes) | No support | No support | No support |
| Feature | Android | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|---|---|
| Basic support | No support | No support | No support | ? | ? | No support | No support | No support |
[1]Partial support refers to not supporting .setDragImage [CanIUse.com]