Вернуться   Дизайнерский форум » ВЕБ-ПРОГРАММИРОВАНИЕ » HTML, CSS, JavaScript

one event handled two div

Обсуждение темы one event handled two div в разделе HTML, CSS, JavaScript, часть категории ВЕБ-ПРОГРАММИРОВАНИЕ; Здравствуйте! Задача простая: мышью перетянуть содержимое одного div'а в другой, т.е.: 1. при onMouseDown над source div создаем новый див с содержимым исходного. ...


Закрытая тема
 
Опции темы
Старый 01.08.2011, 22:40   #1
Здравствуйте!
Задача простая: мышью перетянуть содержимое одного div'а в другой, т.е.:
1. при onMouseDown над source div создаем новый див с содержимым исходного.
2. исходному div'у удаляем содержимое.
3. новому div'у привязываем onMouseMove и тащим его к приемнику.
4. новому div'у привязываем onMouseUp и удаляем его.
5. приемнику нужно знать, что новый div был над ним, когда у него отработалось событие onMouseUp, иначе содержимое возвращается источнику.

Из приведенной выше схемы видно, что 4 и 5 событие - по сути одно, но обработчик div'а-приемника onMouseOver не сработает, пока работает onMouseMove нового div'а.

Таким образом, вся схема является неправильной.
Посоветуйте схему и приемы решения данной задачи.
Заранее благодарен.
Алексей
PS Почините utf-8

Последний раз редактировалось handler; 01.08.2011 в 22:44.. Причина: utf-8
 
Старый 01.08.2011, 22:40
Ссылки
Старый 01.08.2011, 22:50   #2
http://jqueryui.com/demos/droppable/
 
Старый 01.08.2011, 22:56   #3
не так надо делать.
1. делаем копию исходного дива и тащим копию за мышкой (лучше наверно в полупрозрачном виде). при этом в некую глобальную переменную пишем айдишник исходного дива.
2. на возможных целях стоит onmouseup, который в случае наличия какого-то айдишника в той глобальной переменной, делает что нужно (копирует содержимое, потом удаляет исходный див).
3. на копии исходного дива по mouseup стоит просто уничтожение этого дива.
вуаля!
 
Старый 04.08.2011, 12:13   #4