---
title: DragEvent
slug: Web/API/DragEvent
tags:
- API
- DragEvent
- Referencia
- arrastrar y soltar
- drag and drop
translation_of: Web/API/DragEvent
---
{{APIRef("HTML Drag and Drop API")}}
La interfaz DragEvent
es un {{domxref("Event","evento DOM")}} que representa una interacción de arrastrar y soltar. El usuario inicia un arrastre posicionando un dispositivo puntero (como un ratón) en la superficie táctil y luego arrastra el puntero a una nueva posición (como como elemento del DOM). Las aplicaciones son libres de interpretar una interacción de arrastrar y soltar en una manera específica a la aplicación.
Esta interfaz hereda propiedades de {{domxref("MouseEvent")}} y {{domxref("Event")}}.
Propiedades
- {{domxref('DragEvent.dataTransfer')}} {{readonlyInline}}
- Los datos que son transferidos durante una interacción de arrastrar y soltar.
Constructores
A pesar que esta interfaz tiene un constructor, no es posible crear un objeto DataTransfer útil desde código, ya que los objetos {{domxref("DataTransfer")}} tienen un modelo de procesamiento y seguridad que está coordinado por el navegador durante el arrastrar y soltar.
- {{domxref("DragEvent.DragEvent", "DragEvent()")}}
- Crea un DragEvent sintético y que no es de confianza.
Tipos de eventos
- {{event('drag')}}
- Este evento es lanzado cuando un elemento o selección de texto está siendo arrastrado.
- {{event('dragend')}}
- Este evento es lanzado cuando la operación de arrastrar está siendo terminada (liberando el botón del ratón o pulsando la tecla de escape).
- {{event('dragenter')}}
- Este evento es lanzado cuando un elemento arrastrado ingresa a un destino de liberación válido.
- {{event('dragexit')}}
- Este evento es lanzado cuando un elemento ya no es el destino de selección inmediato de la operación de arrastre.
- {{event('dragleave')}}
- Este evento es lanzado cuando el elemento arrastrado o selección de texto deja un destino de liberación válido.
- {{event('dragover')}}
- Este evento es lanzado continuamente cuando un elemento o selección de texto está siendo arrastrado y el puntero del ratón está sobre un destino de liberación válido (cada 50 ms CUANDO el ratón no se está moviendo SINO más rápido entre 5 ms (movimiento lento) y 1 ms (movimiento rápido) aproximadamente. Este patrón de disparo es diferente que {{Event("mouseover")}}).
- {{event('dragstart')}}
- Este evento es lanzado cuando el usuario empieza a arrastrar un elemento o selección de texto.
- {{event('drop')}}
- Este evento es lanzado cuando un elemento o selección de texto es soltado en un destino válido.
GlobalEventHandlers
- {{domxref('GlobalEventHandlers.ondrag')}}
- Un {{domxref('GlobalEventHandlers','manejador de evento global')}} para el evento {{event('drag')}}.
- {{domxref('GlobalEventHandlers.ondragend')}}
- Un {{domxref('GlobalEventHandlers','manejador de evento global')}} para el evento {{event('dragend')}}.
- {{domxref('GlobalEventHandlers.ondragenter')}}
- Un {{domxref('GlobalEventHandlers','manejador de evento global')}} para el evento {{event('dragenter')}}.
- {{domxref('GlobalEventHandlers.ondragexit')}}
- Un {{domxref('GlobalEventHandlers','manejador de evento global')}} para el evento {{event('dragexit')}}.
- {{domxref('GlobalEventHandlers.ondragleave')}}
- Un {{domxref('GlobalEventHandlers','manejador de evento global')}} para el evento {{event('dragleave')}}.
- {{domxref('GlobalEventHandlers.ondragover')}}
- Un {{domxref('GlobalEventHandlers','manejador de evento global')}} para el evento {{event('dragover')}}.
- {{domxref('GlobalEventHandlers.ondragstart')}}
- Un {{domxref('GlobalEventHandlers','manejador de evento global')}} para el evento {{event('dragstart')}}.
- {{domxref('GlobalEventHandlers.ondrop')}}
- Un {{domxref('GlobalEventHandlers','manejador de evento global')}} para el evento {{event('drop')}}.
Ejemplo
Un ejemplo para cada propiedad, constructor, tipo de evento, y manejador de evento global están incluidos en sus respectivas páginas de referencia.
Especificaciones
Especificaciones |
Estado |
Comentario |
{{SpecName("HTML WHATWG", "#dragevent", "DragEvent")}} |
{{Spec2("HTML WHATWG")}} |
|
{{SpecName("HTML5.1", "editing.html#the-dragevent-interface", "DragEvent")}} |
{{Spec2("HTML5.1")}} |
Definición inicial |
Compatibilidad entre navegadores
La tabla de compatibilidad en esta pagina es generado desde datos estructurados. Si gustas contribuir a los datos, por favor revisa
https://github.com/mdn/browser-compat-data y envíanos un solicitud de cambios.
{{Compat("api.DragEvent")}}
Ver también
{{page("/en-US/docs/Web/API/DataTransfer", "Ver también")}}