HTMLElement: dragend event

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The dragend event is fired when a drag operation ends (by releasing a mouse button or hitting the escape key).

This event is cancelable and may bubble up to the Document and Window objects.

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

js
addEventListener("dragend", (event) => {});

ondragend = (event) => {};

Event type

Event properties

In addition to the properties listed below, properties from the parent interface, Event, are available.

DragEvent.dataTransfer Read only

The data that is transferred during a drag-and-drop interaction.

Examples

Resetting opacity on dragend

In this example, we have a draggable element inside a container. Try grabbing the element, dragging it, and then releasing it.

We make the element half-transparent while it is dragged, and listen for the dragend event to reset the element's opacity when it is released.

For a complete example of drag and drop, see the page for the drag event.

HTML

html
<div id="container">
  <div id="draggable" draggable="true">This div is draggable</div>
</div>
<div class="dropzone"></div>

CSS

css
body {
  /* Prevent the user from selecting text in the example */
  user-select: none;
}

#draggable {
  text-align: center;
  background: white;
}

#container {
  width: 200px;
  height: 20px;
  background: blueviolet;
  padding: 10px;
}

.dragging {
  opacity: 0.5;
}

JavaScript

js
const source = document.getElementById("draggable");
source.addEventListener("dragstart", (event) => {
  // make it half transparent
  event.target.classList.add("dragging");
});

source.addEventListener("dragend", (event) => {
  // reset the transparency
  event.target.classList.remove("dragging");
});

Result

Specifications

Specification
HTML Standard
# ix-handler-ondragend
HTML Standard
# event-dnd-dragend

Browser compatibility

BCD tables only load in the browser

See also