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.
DeprecatedThis 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.
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
.
Note: This method is Gecko-specific.
Syntax
void dataTransfer.mozSetDataAt([type], data, index);
Arguments
- type
- A
string
representing the type of the drag data to add to thedrag data object
. - data
- A
nsIVariant
representing the data to add to thedrag data object
. - index
- A
unsigned long
representing 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
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Chrome
No support No |
Edge
No support No |
Firefox
No support ? — 71 |
IE
No support No |
Opera
No support No |
Safari
No support No |
WebView Android
No support No |
Chrome Android
No support No |
Firefox Android
? |
Opera Android
No support No |
Safari iOS
No support No |
Samsung Internet Android
No support No |
Legend
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.'
- Experimental. Expect behavior to change in the future.
- Non-standard. Expect poor cross-browser support.'
- Non-standard. Expect poor cross-browser support.
See also
DataTransfer.mozSetDataAt() by Mozilla Contributors is licensed under CC-BY-SA 2.5.