Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Разбираюсь с drag and drop (https://javascript.ru/forum/events/21681-razbirayus-s-drag-drop.html)

uaNikita 20.09.2011 09:42

Разбираюсь с drag and drop
 
Здравствуйте, уважаемые форумчане помогите разобраться с drag and drop, подключаю http://javascript.ru/ui/draganddrop#demo-1, результат можно увидеть по ссылке http://vsegarazd.com/nikita/dnd/index.html но элементы не перетягиваются.

fixEvent, getPosition определены, все методы mouse* тоже, не могу понять загвоздка(

da_ff 20.09.2011 11:24

у вас нет инициализации событий. Только необходимые функции и все.

Добавьте
var
  imgs = document.getElementById('dragObjects1').getElementsByTagName('img'),
  imgsInd = -1;
while (imgs[++imgsInd]) {
  dragMaster.makeDraggable(imgs[imgsInd]);
}

uaNikita 20.09.2011 14:32

Ясно, спасибо

uaNikita 22.09.2011 00:26

Еще раз привет, продолжаю осваивать драг энд дроп) http://vsegarazd.com/nikita/dnd/ - дописал код, он динамически добавляет элементы (красные кружки) на страницу. При нажатии на пустое место добавляется новый кружок, при нажатии на уже существующий кружок его можно переместить описанным выше способом.

function createSquare(e) {
                e = fixEvent(e);

                if (e.target.className == "square")
                { }
                  
                else {
                    var square = document.createElement("div");

                    with(square.style) {
                        top = e.pageY - 5 + 'px'
                        left = e.pageX - 5 + 'px'
                    }
                    square.className = "square"

                    dragMaster.makeDraggable(square);

                    var parent = document.getElementById('layout');

                    $(".r").append(square.style.top + " " + square.style.left + ", ");

                    parent.appendChild(square)
                }

               

            }

            document.onclick = createSquare


Теперь стоит задача реализации удаления этих кружков и изменения описания отдельно взятого кружка.

То бишь при нажатии на кружок или создании нового появляется форма с описанием и кнопочкой удалить. Как это правильней всего реализовать. Где хранить описание каждого отдельно взятого кружка?

Я подозреваю, что нужно использовать что-то вроде метода .data() в jquery?

da_ff 22.09.2011 11:25

jquery снабжает узлы свойством jQuery_рандомное_число, в котором хранится номер соответсвующий этому узлу из хэш-таблицы. Можете поступить так же. Это в тему хранения данных.


Часовой пояс GMT +3, время: 14:42.