HTML5 перетащите, чтобы переместить div в любом месте экрана? - PullRequest
25 голосов
/ 02 сентября 2011

Название довольно очевидно.

Все демонстрации, которые я нашел, состоят в том, чтобы сбросить div в определенном месте.Например, мусорка.Мне нужно сделать перетаскиваемый div, который можно было бы поместить в любое место на экране.

Возможно ли это сделать с помощью HTML5?если нет, то как мне это сделать?

1 Ответ

55 голосов
/ 03 сентября 2011

Это довольно просто:

  1. В событии dragstart вычислите смещение между тем, где пользователь щелкнул перетаскиваемый элемент, и верхним левым углом
  2. . Убедитесь, что *Событие 1007 * применяется ко всему документу, поэтому элемент может быть отброшен в любом месте
  3. В событии drop используйте смещение, рассчитанное вами с помощью clientX и clientY для раскрытия, чтобы определить, гдедля позиционирования элемента

Вот один I , подготовленный ранее .Для получения бонусных баллов вы можете обновить верхнюю и левую позиции элемента в событии dragover , это полезно, если бит, который вы позволяете перетаскивать, не является целым элементом, который необходимо переместить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...