Событие перетаскивания против событий мыши для Drag and Drop - PullRequest
0 голосов
/ 23 января 2020

Недавно я начал изучать Drag and Drop API и проходил какое-то обучение на Youtube, начиная с this , что было довольно хорошо, Понял все Drag Cycle.

Но я видел другие учебные пособия , которые не использовали drag, но функция перетаскивания была создана с использованием событий mouseup, mousedown, mousemove.

В настоящее время я изучаю Ваниль JS

Я все еще пытаюсь найти ответ на вопрос -

  1. Почему использовать mouse события поверх drag события? Неужели мало вещей, которые можно сделать с помощью событий mouse, нельзя сделать с помощью события drag?

  2. Если это так Что такое сценарий ios где использование drag не будет работать? или использование события mouse не сработает?

  3. Как выбрать способ реализации функции drag and drop? какие плюсы или минусы в обоих методах?

  4. Любой другой способ? (Я имею в виду, кроме mouse событий и drag событий)

1 Ответ

1 голос
/ 24 января 2020

Я не уверен, почему ваш вопрос получил два близких голоса? Я думаю, что это достаточно разумная вещь, чтобы спросить, есть HTML Drag and Drop API, но большинство реализаций используют события мыши и абсолютное позиционирование. Вы всегда можете сказать это, потому что они ограничивают перетаскивание на страницу браузера, на которой вы начали перетаскивание.

HTML5 Перетаскивание позволяет перетаскивать «за пределы» браузера и взаимодействовать с другими приложениями. Например, вы можете перетаскивать данные между вкладками браузера или перетаскивать данные из текстового процессора и перетаскивать их в веб-приложение с помощью API перетаскивания. Вы также можете перетащить материал из вашего веб-приложения и поместить его в собственное приложение.

Вы не можете делать ничего из вышеперечисленного с такими вещами, как, например, перетаскиваемый API * 1016. Если вы хотите переместить элемент по странице, то подход перетаскивания jquery гораздо проще реализовать, API перетаскивания, например, «затянет» перетаскиваемый элемент, тогда как если он абсолютно позиционирован, вы можете просто обновить его координаты. при перемещении мыши et c.

Вот сортируемый список , реализованный с помощью HTML5 drag and drop от Я работал с этим материалом несколько лет go.

Мой совет: если вы хотите перемещать элементы на одной странице, то есть перемещать объекты, или вам не нужно перетаскивать вкладки браузера или принимать данные из других приложений, HTML 5 Возможно, DnD будет неприятно работать с.

Надеюсь, это поможет.

...