Функция перетаскивания на Drag and Drop, не работает - PullRequest
1 голос
/ 26 декабря 2011

Я создаю плагин Drag and Drop. Прямо сейчас я пытаюсь создать как можно больше возможностей. Моя текущая цель - заставить мою функцию handle работать.

Это код, который я использую:

$(o.handle).mousedown(function (event) {
    down = true;
    if (o.activeClass === true) {
        $(oj).addClass(o.activeClass);
    }
    var dx = event.clientX - $(o.handle).position().left,
        dy = event.clientY - $(o.handle).position().top;
    $(o.handle).mousemove(function (event) {
        if (down == true) {
            if (o.dragClass === true) {
                $(oj).addClass(o.dragClass);
            }
            $(oj).css({
                cursor: 'move',
                left: event.clientX - dx,
                top: event.clientY - dy
            });
        }
    }); 
});

О кодексе. oj относится к this. this - элемент, который перетаскивается ручкой.
o.handle относится к элементу дескриптора. o в o.handle относится к:

var o = $.extend(defaults, options);

Проблема: в первый раз я пытаюсь нажать на o.handle. Элемент переходит на: top:0px;left:0px;. Тогда это тянет хорошо. Но затем, как только я уронил его, затем взял элемент и попытался снова его перетащить. Он прыгает на: top:0px;left:1px;. Это происходит снова и снова, без остановки. Я не почему, хотя. Вы можете увидеть проблему здесь . Вы видите ошибку в моем коде?

Спасибо за любую помощь

...