Nach dem Löschen einer Datei in div
in Firefox wird die Webseite in diese Datei umgeleitet. Ich habe versucht, diese Weitergabe unter Verwendung von jQuerys e.preventDefault()
in drop
-Handler zu stoppen und ist fehlgeschlagen.
Siehe diese Demo . Wenn Sie eine Datei in #test
einfügen, wird die Webseite nicht umgeleitet, sondern in #test1
Ich will wissen warum. Sollte ich Handler immer an dragenter
, dragover
, dragleave
und drop
binden, um die Weitergabe nach drop
zu verhindern?
Aktualisierung:
Ich habe einige Tipps zum html5doctor gefunden:
Um dem Browser mitzuteilen, dass wir dieses Element einfügen können, müssen wir nur noch Abbrechen des Dragover-Ereignisses Da sich IE jedoch anders verhält, haben wir müssen dasselbe für das Ereignis draenter tun.
Und Mozilla Ansprüche :
Ein Listener für die Ereignisse
dragenter
unddragover
wird verwendet Geben Sie gültige Drop-Ziele an, dh Orte, an denen Elemente gezogen werden können fallen gelassen werden.
Aber ich teste diese Demo auf Firefox, #test
funktioniert und #test1
nicht, scheint Mozilla gemacht Fehler, und html5doctor hat Recht: Firefox benötigt dragover
nur, um drop
work zu machen.
Ich bemerkte, dass es nicht nur genug war, um onDragOver abzubrechen, sondern ich musste onDragDrop und onDragLeave auch abbrechen. Im Folgenden zeige ich, wie sich der Benutzer verhält:
%Vor%Und dann dein Element ...
%Vor%Tags und Links jquery html5 drag-and-drop