Określ, co jest przeciągane ze zdarzeń dragenter i dragover
Próbuję użyć przeciągalnego API HTML5 (choć zdaję sobie z tego sprawęma swoje problemy). Do tej pory jedynym showstopper, z którym się spotkałem, jest to, że nie mogę znaleźć sposobu na określenie, co jest przeciągane, gdy adragover
lubdragenter
pożary zdarzeń:
el.addEventListener('dragenter', function(e) {
// what is the draggable element?
});
Zdaję sobie sprawę, że mogę założyć, że jest to ostatni element do wystrzeleniadragstart
wydarzenie, ale ... multitouch. Próbowałem również użyće.dataTransfer.setData
zdragstart
dołączyć unikalny identyfikator, ale najwyraźniej dane sąniedostępny zdragover
/dragenter
:
Dane te będą dostępne tylko po wystąpieniu spadku podczas zdarzenia upuszczania.
Jakieś pomysły?
Aktualizacja: W chwili pisania tego, przeciąganie i upuszczanie HTML5 nie wydaje się być zaimplementowane w żadnej głównej przeglądarce mobilnej, co sprawia, że kwestia multitouch może być w praktyce stosowana. Chciałbym jednak rozwiązanie, które zagwarantuje działanie w każdej implementacjispecyfikacja, co nie wyklucza jednoczesnego przeciągania wielu elementów.
Wysłałemrozwiązanie robocze poniżej, ale to brzydki hack. Nadal mam nadzieję na lepszą odpowiedź.