From 386afd3b40a3a5da779d5724054e85c37148bac3 Mon Sep 17 00:00:00 2001 From: Mike Sherov Date: Wed, 20 Aug 2014 10:00:48 -0400 Subject: [PATCH] Drag: handle option to drag by center vs. corner --- jquery.simulate.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/jquery.simulate.js b/jquery.simulate.js index eeb5624..6359ce4 100644 --- a/jquery.simulate.js +++ b/jquery.simulate.js @@ -279,12 +279,24 @@ function findCenter( elem ) { }; } +function findCorner( elem ) { + var offset, + document = $( elem.ownerDocument ); + elem = $( elem ); + offset = elem.offset(); + + return { + x: offset.left - document.scrollLeft(), + y: offset.top - document.scrollTop() + }; +} + $.extend( $.simulate.prototype, { simulateDrag: function() { var i = 0, target = this.target, options = this.options, - center = findCenter( target ), + center = options.handle === "corner" ? findCorner( target ) : findCenter( target ), x = Math.floor( center.x ), y = Math.floor( center.y ), dx = options.dx || 0,