mirror of
https://github.com/jquery/jquery-ui.git
synced 2024-12-07 06:14:24 +00:00
More fixes for userAction
This commit is contained in:
parent
3d16364e61
commit
10afdcedde
@ -114,37 +114,42 @@ $.extend($.userAction.prototype, {
|
|||||||
// drag helper function, thanks Richard Worth's testmouse api.
|
// drag helper function, thanks Richard Worth's testmouse api.
|
||||||
var self = this, o = this.options, center = this.findCenter(),
|
var self = this, o = this.options, center = this.findCenter(),
|
||||||
target = $(this.target), lastx = center.x, lasty = center.y,
|
target = $(this.target), lastx = center.x, lasty = center.y,
|
||||||
fake = $(StringPool.FAKE_CURSOR_EXP);
|
fake = $(StringPool.FAKE_CURSOR_EXP),
|
||||||
|
speed = o.speed || StringPool.SLOW,
|
||||||
|
easing = o.easing || StringPool.SWING;
|
||||||
|
|
||||||
fake = fake.size() ? fake :
|
fake = fake.size() ? fake :
|
||||||
$(StringPool.FAKE_CURSOR_DIV)
|
$(StringPool.FAKE_CURSOR_DIV)
|
||||||
.css({ position: StringPool.ABSOLUTE }).appendTo(document.body);
|
.css({ position: StringPool.ABSOLUTE }).appendTo(document.body);
|
||||||
|
|
||||||
fake
|
fake
|
||||||
.animate({ left: center.x, top: center.y }, "fast", function() {
|
.animate({ left: center.x, top: center.y }, speed, easing, function() {
|
||||||
target
|
target
|
||||||
.userAction(StringPool.MOUSEOVER)
|
.userAction(StringPool.MOUSEOVER)
|
||||||
.userAction(StringPool.MOUSEDOWN)
|
.userAction(StringPool.MOUSEDOWN)
|
||||||
.userAction(StringPool.MOUSEMOVE);
|
.userAction(StringPool.MOUSEMOVE);
|
||||||
})
|
})
|
||||||
.animate({ left: center.x + (dx||0), top: center.y + (dy||0) }, {
|
.animate({ left: center.x + (dx||0), top: center.y + (dy||0) }, {
|
||||||
speed: "fast",
|
speed: speed,
|
||||||
|
easing: easing,
|
||||||
step: function(i, anim) {
|
step: function(i, anim) {
|
||||||
lastx = anim.prop == StringPool.LEFT ? i : lastx;
|
lastx = anim.prop == StringPool.LEFT ? i : lastx;
|
||||||
lasty = anim.prop == StringPool.TOP ? i : lasty;
|
lasty = anim.prop == StringPool.TOP ? i : lasty;
|
||||||
target.userAction(StringPool.MOUSEMOVE, { x: lastx, y: lasty, after: o.drag });
|
target.userAction(StringPool.MOUSEMOVE, { x: lastx, y: lasty, after: o.drag || o.after });
|
||||||
},
|
},
|
||||||
complete: function() {
|
complete: function() {
|
||||||
target.userAction(StringPool.MOUSEUP).userAction(StringPool.MOUSEOUT);
|
target.userAction(StringPool.MOUSEUP).userAction(StringPool.MOUSEOUT);
|
||||||
|
|
||||||
// remove fake cursor
|
// remove fake cursor
|
||||||
//$(this).remove();
|
$(this).remove();
|
||||||
|
|
||||||
// trigger drag queue
|
// trigger drag queue
|
||||||
var queue = $.data(self.target, StringPool.DATA_QUEUE);
|
var queue = $.data(self.target, StringPool.DATA_QUEUE);
|
||||||
|
|
||||||
if (queue) queue.shift();
|
if (queue) queue.shift();
|
||||||
|
|
||||||
if (queue && queue[0]) self.drag(queue[0][0], queue[0][1]);
|
if (queue && queue[0]) self.drag(queue[0][0], queue[0][1]);
|
||||||
|
else $.removeData(self.target, StringPool.DATA_QUEUE);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@ -278,7 +283,9 @@ var StringPool = {
|
|||||||
ABSOLUTE: 'absolute',
|
ABSOLUTE: 'absolute',
|
||||||
DATA_QUEUE: 'ua-drag-queue',
|
DATA_QUEUE: 'ua-drag-queue',
|
||||||
TOP: 'top',
|
TOP: 'top',
|
||||||
LEFT: 'left'
|
LEFT: 'left',
|
||||||
|
SLOW: 'slow',
|
||||||
|
SWING: 'swing'
|
||||||
};
|
};
|
||||||
|
|
||||||
})(jQuery);
|
})(jQuery);
|
Loading…
Reference in New Issue
Block a user