Creative Saplings

HTML5 – Drag & Drop (Deutsch)

Januar 18, 2021
No Comments
Anzeigen

Drag & Drop (DnD) ist ein leistungsstarkes Benutzeroberflächenkonzept, das das Kopieren, Neuanordnen und Löschen erleichtert von Elementen mit Hilfe von Mausklicks. Auf diese Weise kann der Benutzer die Maustaste über ein Element klicken und gedrückt halten, an eine andere Stelle ziehen und die Maustaste loslassen, um das Element dort abzulegen.

Um Drag & Drop-Funktionen mit herkömmlichem HTML4 zu erzielen, Entwickler müssten entweder komplexe JavaScript-Programmierung oder andere JavaScript-Frameworks wie jQuery usw. verwenden.

Jetzt hat HTML 5 eine Drag & Drop-API (DnD) entwickelt, die native Browser-Unterstützung für die Browsererstellung bietet Das Codieren ist viel einfacher.

HTML 5 DnD wird von allen gängigen Browsern wie Chrome, Firefox 3.5 und Safari 4 usw. unterstützt.

Drag & Drop-Ereignisse

Es gibt eine Reihe von Ereignissen, die in verschiedenen Phasen des Drag & Drop-Vorgangs ausgelöst werden. Diese Ereignisse sind unten aufgeführt –

Sr.Nr. Ereignisse & Beschreibung
1

dragstart

Wird ausgelöst, wenn der Benutzer mit dem Ziehen des Objekts beginnt.

2

Dragenter

Wird ausgelöst, wenn die Maus zum ersten Mal über das Zielelement bewegt wird, während ein Drag ausgeführt wird. Ein Listener für dieses Ereignis sollte angeben, ob ein Ablegen über diesen Ort zulässig ist. Wenn keine Listener vorhanden sind oder die Listener keine Operationen ausführen, ist ein Löschen standardmäßig nicht zulässig.

3

Dragover

Dieses Ereignis wird ausgelöst, wenn die Maus beim Ziehen über ein Element bewegt wird. In den meisten Fällen entspricht der Vorgang, der während eines Listeners ausgeführt wird, dem Dragenter-Ereignis.

4

dragleave

Dieses Ereignis wird ausgelöst, wenn die Maus ein Element verlässt, während ein Drag ausgeführt wird. Listener sollten alle Hervorhebungs- oder Einfügungsmarkierungen entfernen, die für das Drop-Feedback verwendet werden.

5

Ziehen

Wird jedes Mal ausgelöst, wenn die Maus bewegt wird, während das Objekt gezogen wird.

6

drop

Das Drop-Ereignis wird auf das Element ausgelöst, bei dem der Drop am Ende des Ziehvorgangs aufgetreten ist. Ein Listener ist dafür verantwortlich, die gezogenen Daten abzurufen und an der Ablagestelle einzufügen.

7

dragend

Wird ausgelöst, wenn der Benutzer beim Ziehen eines Objekts die Maustaste loslässt.

Hinweis – Beachten Sie, dass nur Drag-Ereignisse ausgelöst werden. Mausereignisse wie Mausbewegungen werden während eines Ziehvorgangs nicht ausgelöst.

Das DataTransfer-Objekt

Die Ereignis-Listener-Methoden für alle Drag & Drop-Ereignisse akzeptieren Ereignisobjekte mit einem schreibgeschützten Attribut namens dataTransfer.

Der event.dataTransfer gibt das dem Ereignis zugeordnete DataTransfer-Objekt wie folgt zurück:

function EnterHandler(event) { DataTransfer dt = event.dataTransfer; .............}

Das DataTransfer-Objekt enthält Daten zum Ziehen und Drop-Operation. Diese Daten können abgerufen und in Bezug auf verschiedene Attribute festgelegt werden, die dem DataTransfer-Objekt zugeordnet sind, wie unten erläutert –

Sr.Nr. DataTransfer-Attribute und ihre Beschreibung
1

dataTransfer.dropEffect

  • Gibt die aktuell ausgewählte Operation zurück.

  • Dieses Attribut kann festgelegt werden, um die ausgewählte Operation zu ändern.

  • Die möglichen Werte sind keine, kopieren, verknüpfen und verschieben.

2

dataTransfer.effectAllowed

  • Gibt die Arten von Operationen zurück, die zulässig sein sollen.

  • Dieses Attribut kann festgelegt werden, um die zulässigen Operationen zu ändern.

  • Die möglichen Werte sind none, copy, copyLink, copyMove, link, linkMove, move, all und nicht initialisiert.

3

dataTransfer.types

Gibt eine DOMStringList zurück, in der die im Dragstart-Ereignis festgelegten Formate aufgelistet sind. Wenn Dateien gezogen werden, ist einer der Typen die Zeichenfolge „Dateien“.

4

dataTransfer.clearData ()

Entfernt die Daten der angegebenen Formate. Entfernt alle Daten, wenn das Argument weggelassen wird.

5

dataTransfer.setData (Format, Daten)

Fügt die angegebenen Daten hinzu.

6

data = dataTransfer.getData (Format)

Gibt die angegebenen Daten zurück. Wenn keine solchen Daten vorhanden sind, wird die leere Zeichenfolge zurückgegeben.

7

dataTransfer.files

Gibt eine Dateiliste der Dateien zurück, die gezogen werden, falls vorhanden.

8

dataTransfer.setDragImage (Element, x, y)

Verwendet das angegebene Element zum Aktualisieren der Drag-Rückmeldung und ersetzt alle zuvor angegebenen Rückmeldungen.

9

dataTransfer.addElement (Element)

Fügt das angegebene Element zum hinzu Liste der Elemente, die zum Rendern des Drag-Feedbacks verwendet werden.

Drag & Drop-Prozess

Die Schritte zum Implementieren der Drag & Drop-Operation –

Schritt 1 – Ziehen eines Objekts ziehbar

Hier sind die Schritte, die ausgeführt werden müssen –

  • Wenn Sie ein Element ziehen möchten, müssen Sie das Attribut draggable für dieses Element auf true setzen.

  • Legen Sie einen Ereignis-Listener für Dragstart fest, der s speichert die Daten, die gezogen werden.

  • Der Dragstart des Ereignis-Listeners legt die zulässigen Effekte fest (Kopieren, Verschieben, Verknüpfen oder eine Kombination).

Das folgende Beispiel zeigt, wie ein Objekt ziehbar gemacht wird –

Dies führt zu folgendem Ergebnis:

Schritt 2 – Löschen des Objekts

Um einen Drop zu akzeptieren, muss das Drop-Ziel mindestens drei Ereignisse abhören.

  • Das Dragenter-Ereignis, mit dem bestimmt wird, ob das Drop-Ziel den Drop akzeptieren soll oder nicht . Wenn das Löschen akzeptiert werden soll, muss dieses Ereignis abgebrochen werden.

  • Das Dragover-Ereignis, mit dem festgelegt wird, welches Feedback dem Benutzer angezeigt werden soll. Wenn das Ereignis abgebrochen wird, wird das Feedback (normalerweise der Cursor) basierend auf dem Wert des dropEffect-Attributs aktualisiert.

  • Schließlich das Drop-Ereignis, das das tatsächliche Löschen ermöglicht

Das folgende Beispiel zeigt, wie ein Objekt in ein anderes Objekt verschoben wird –

Dies führt zu folgendem Ergebnis:

Anzeigen

Articles
Previous Post

Unterschied zwischen JDK, JRE und JVM

Next Post

Landhundenamen

Schreibe einen Kommentar Antworten abbrechen

Neueste Beiträge

  • Beste Fotografieschulen der Welt, 2020
  • Souveräne Bürger bringen ihre regierungsfeindliche Philosophie auf die Straße
  • Leitfaden für Stuckreparaturkosten
  • Muckrakers (Deutsch)
  • Präzisionsonkologie

Archive

  • Februar 2021
  • Januar 2021
  • Dezember 2020
  • November 2020
  • Oktober 2020
  • September 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.