HTMLElement: dragstart-Event
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Das dragstart-Event wird ausgelöst, wenn der Benutzer beginnt, ein Element oder eine Textauswahl zu ziehen.
Dieses Ereignis kann abgebrochen werden und kann bis zu den Document- und Window-Objekten weitergeleitet werden.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("dragstart", (event) => { })
ondragstart = (event) => { }
Ereignistyp
Beispiele
>Opazität beim Start des Ziehens einstellen
In diesem Beispiel haben wir ein ziehbares Element innerhalb eines Containers. Versuchen Sie, das Element zu greifen, es zu ziehen und dann loszulassen.
Wir lauschen auf das dragstart-Ereignis, um das Element während des Ziehens halbtransparent zu machen.
Für ein vollständiges Beispiel von Drag and Drop siehe die Seite für das drag-Ereignis.
HTML
<div id="container">
<div id="draggable" draggable="true">This div is draggable</div>
</div>
<div class="dropzone"></div>
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
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");
});
Ergebnis
Spezifikationen
| Spezifikation |
|---|
| HTML> # handler-ondragstart> |
| HTML> # event-dnd-dragstart> |