Ich versuche, die ziehbare HTML5-API zu verwenden (obwohl mir klar ist, dass sie Probleme hat ). Bisher ist der einzige Showstopper, dem ich begegnet bin, dass ich nicht herausfinden kann, was gezogen wird, wenn ein dragoveroder ein dragenterEreignis ausgelöst wird:
el.addEventListener('dragenter', function(e) {
// what is the draggable element?
});
Mir ist klar, dass ich davon ausgehen kann, dass es das letzte Element ist, das ein dragstartEreignis auslöst, aber ... Multitouch. Ich habe auch versucht, e.dataTransfer.setDatavon der dragstartzu verwenden, um eine eindeutige Kennung anzuhängen, aber anscheinend ist auf diese Daten von / : nicht zugegriffen werden.dragoverdragenter
Diese Daten sind nur verfügbar, wenn während des Drop-Ereignisses ein Drop auftritt.
Also irgendwelche Ideen?
Update: Zum jetzigen Zeitpunkt scheint HTML5-Drag-and-Drop in keinem größeren mobilen Browser implementiert zu sein, weshalb Multitouch in der Praxis nicht erwähnt wird. Ich möchte jedoch eine Lösung, die garantiert für jede Implementierung der Spezifikation funktioniert, was nicht zu verhindern scheint, dass mehrere Elemente gleichzeitig gezogen werden.
Ich habe unten eine funktionierende Lösung veröffentlicht , aber es ist ein hässlicher Hack. Ich hoffe immer noch auf eine bessere Antwort.