Modernes Webdesign

Ereignisse eines Vorgangs

Als Resultat entstehen drei Textkästen, die sich mit der Maus bereits anfassen lassen. Greift der Benutzer ein Element der Webseite und zieht es von seiner Position weg, reduziert der Browser in der Regel seine Opazität. Einige der älteren Browser, insbesondere Firefox, erwarten hierzu allerdings explizite Anweisungen.

Ereignisse eines Vorgangs

Damit die Browser das Ziehen drag-fähiger Elemente als ein relevantes Ereignis zur Kenntnis nehmen und darauf reagieren können, werden passende Ereignis-listener benötigt. Zur Auswahl stehen:

  • dradstart: Start des Drag-und-Drop-Vorgangs
  • drag: Ziehen
  • dragenter, dragover und dragleave: visuelle Hinweise zwecks verbesserter Benutzerinteraktion
  • drop: Loslassen
  • dragend: Ende des Drag-und-Drop-Vorgangs
Der Browser muss das Ausgangselement am Ursprungsort als drag-fähig erkennen, die Daten erfassen und in der Lage sein, sie in der so genannten Drop-Zone abzulegen.

Starten eines Drag-Vorgangs

Wurde das Attribut:

draggable="true";

dem betreffenden Element erst einmal zugewiesen, gilt es, einen dragstart-Ereignishandler zu erzeugen, um die Auswertung von Drag-und-Drop-Ereignissen zu ermöglichen. Beim Auftreten eines dragstart-Ereignisses, das ja einen neuen Drag-und-Drop-Vorgang einläutet, ließe sich etwa die Opazität des betreffenden Elementes reduzieren:

function handleDragStart(e)
{
this.style.opacity = '0.4';
// das ist der Ausgangsknoten
}
var cols = document.querySelectorAll
('#columns .column');
[].forEach.call(cols, function(col)
{
col.addEventListener('dragstart',
handleDragStart, false);
});

Verbessertes Feedback

Damit der Benutzer den Drag-Vorgang intuitiv abschließen kann, benötigt er visuelles Feedback zum Ablauf des Vorgangs. Dieses liefern im Idealfall sowohl das drag-fähige Objekt als auch die Drop-Zone.Da das Ziel des dragstart-Ereignisses auf das Ausgangselement gesetzt ist, erhält der Benutzer mittels

this.style.opacity = '0.4';

visuelles Feedback im Verlauf des gesamten Vorgangs (unabhängig vom Verhalten des Browsers). Beim Loslassen der Maustaste wird die Opazität allerdings nicht zurückgesetzt.Um die Benutzerführung konsequent und logisch wirken zu lassen, müssen wir die Opazität wieder auf den Wert 100 % setzen:

this.style.opacity = '1';

sobald der Drag-Vorgang abgeschlossen ist. Es bietet sich an, dies imm Ereignishandler für die Ereignisse dragleave und dragend zu berücksichtigen.

© Internet Magazin

Editieren des draggable-Attributes in Dreamweaver CS5.5.

Die Ereignishandler dragcenter, dragover und dragleave können genutzt werden, um dem Website-Besucher zusätzliches visuelles (und/oder akustisches) Feedback über den Ablauf des Vorgangs zu liefern. Greift der Benutzer das Symbol einer Ware und schwebt dieses über dem Warenkorb, so sollte sich diese Aktivität in geänderten CSS-Attributen der Drop-Zone des Warenkorbs widerspiegeln.Das hilft dem Besucher, zu unterscheiden, ob er etwa ein neues Produkt dem Warenkorb hinzufügt oder ein bestehendes Produkt durch das aktive Element ersetzt. Insbesondere bei der Umsetzung eines Warenkorbs mit Drag-und-Drop-Funktionalität muss man ebendiesem Aspekt der Gestaltung der Seite besondere Aufmerksamkeit widmen.

Mehr lesen

Chronologische Liste und Netflix-Links -

Neuerscheinungen in der Übersicht -

Vorschau auf Film- und Serien-Highlights -

Mehr zum Thema

Webdesign

Adobe Illustrator wird im Webdesign immer beliebter. Wie Sie das Tool richtig einsetzen, erfahren Sie hier.
Facebook

Was sind die Implikationen für Unternehmen und Endanwender bei Facebooks neuer Suche Graph Search?
Online-Recht

Allgemeine Geschäftsbedingungen liest sich niemand gerne durch. Sie sind jedoch notwendig und äußerst sinnvoll. Worauf sie achten sollten.
Online-Recht in der Cloud

Dateien werden immer häufiger in der Cloud bereitgestellt. Rechtlich ist das jedoch durchaus problematisch. Wir klären über das Urheberrecht in der…
E-Commerce-Logistik

Für den Erfolg eines Online-Shops sind zahlreiche Faktoren verantwortlich. Neben Produktvielfalt und Darstellung der Waren gehört auch die Logistik.