Определите, что перетаскивается из событий Dragenter и Dragover
Я пытаюсь использовать перетаскиваемый API HTML5 (хотя я это понимаюимеет свои проблемы). До сих пор единственное, с чем я столкнулся, - это то, что я не могу найти способ определить, что перетаскивается, когдаdragover
или жеdragenter
события пожары:
el.addEventListener('dragenter', function(e) {
// what is the draggable element?
});
Я понимаю, что могу предположить, что это последний элемент, которыйdragstart
событие, но ... мультитач. Я также пытался использоватьe.dataTransfer.setData
отdragstart
прикрепить уникальный идентификатор, но очевидно, что данныенедоступный отdragover
/dragenter
:
This data will only be available once a drop occurs during the drop event.
Итак, есть идеи?
Update: На момент написания статьи перетаскивание HTML5, по-видимому, не реализовано ни в одном крупном мобильном браузере. Однако мне нравится решение, которое гарантированно будет работать в любой реализацииспецификация, который, по-видимому, не препятствует одновременному перетаскиванию нескольких элементов.
Я опубликовалрабочий раствор ниже, но это отвратительный взлом. Я все еще надеюсь на лучший ответ.