The DragEvent
interface is a DOM event
that represents a drag and drop interaction. The user initiates a drag by placing a pointer device (such as a mouse) on the touch surface and then dragging the pointer to a new location (such as another DOM element). Applications are free to interpret a drag and drop interaction in an application-specific way.
This interface inherits properties from MouseEvent
and Event
.
Properties
DragEvent.dataTransfer
Read only- The data that is transferred during a drag and drop interaction.
Constructors
Although this interface has a constructor, it is not possible to create a useful DataTransfer object from script, since DataTransfer
objects have a processing and security model that is coordinated by the browser during drag-and-drops.
DragEvent()
- Creates a synthetic and untrusted DragEvent.
Event types
drag
- This event is fired when an element or text selection is being dragged.
dragend
- This event is fired when a drag operation is being ended (by releasing a mouse button or hitting the escape key).
dragenter
- This event is fired when a dragged element or text selection enters a valid drop target.
dragexit
- This event is fired when an element is no longer the drag operation's immediate selection target.
dragleave
- This event is fired when a dragged element or text selection leaves a valid drop target.
dragover
- This event is fired continuously when an element or text selection is being dragged and the mouse pointer is over a valid drop target (every 50 ms WHEN mouse is not moving ELSE much faster between 5 ms (slow movement) and 1ms (fast movement) approximately. This firing pattern is different than
mouseover
). dragstart
- This event is fired when the user starts dragging an element or text selection.
drop
- This event is fired when an element or text selection is dropped on a valid drop target.
GlobalEventHandlers
GlobalEventHandlers.ondrag
- A
global event handler
for thedrag
event. GlobalEventHandlers.ondragend
- A
global event handler
for thedragend
event. GlobalEventHandlers.ondragenter
- A
global event handler
for thedragenter
event. GlobalEventHandlers.ondragexit
- A
global event handler
for thedragexit
event. GlobalEventHandlers.ondragleave
- A
global event handler
for thedragleave
event. GlobalEventHandlers.ondragover
- A
global event handler
for thedragover
event. GlobalEventHandlers.ondragstart
- A
global event handler
for thedragstart
event. GlobalEventHandlers.ondrop
- A
global event handler
for thedrop
event.
Example
An Example of each property, constructor, event type and global event handlers is included in their respective reference page.
Specifications
Specification | Status | Comment |
HTML Living StandardThe definition of 'DragEvent' in that specification. | Living Standard | |
HTML 5.1The definition of 'DragEvent' in that specification. | Recommendation | Initial definition |
Browser compatibility
The compatibility table in 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 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
DragEvent
|
Chrome
Full support 3 |
Edge
Full support 12 |
Firefox
Full support 3.5 |
IE
Full support 10 |
Opera
Full support 12 |
Safari
Full support 3.1 |
WebView Android
No support No |
Chrome Android
No support No |
Firefox Android
Full support 4 |
Opera Android
No support No |
Safari iOS
No support No |
Samsung Internet Android
No support No |
DragEvent() constructor
|
Chrome
Full support 46 |
Edge
Full support 12 |
Firefox
Full support 3.5 |
IE
Full support 10 |
Opera
Full support 12 |
Safari
Full support 3.1 |
WebView Android
No support No |
Chrome Android
No support No |
Firefox Android
Full support Yes |
Opera Android
No support No |
Safari iOS
No support No |
Samsung Internet Android
No support No |
dataTransfer
|
Chrome
Full support 46 |
Edge
Full support 12 |
Firefox
Full support 3.5 |
IE
Full support 10 |
Opera
Full support Yes |
Safari
Full support 3.1 |
WebView Android
No support No |
Chrome Android
No support No |
Firefox Android
Full support Yes |
Opera Android
No support No |
Safari iOS
No support No |
Samsung Internet Android
No support No |
Legend
- Full support
- Full support
- No support
- No support
See also
- Drag and drop
- Drag Operations
- Recommended Drag Types
- Dragging and Dropping Multiple Items
- DataTransfer test - Paste or Drag
DragEvent by Mozilla Contributors is licensed under CC-BY-SA 2.5.