From c50e137b2e37e54011a87e2740df9f0cd14623ae Mon Sep 17 00:00:00 2001 From: Sebastien Dumetz Date: Mon, 2 Jun 2014 11:49:20 +0200 Subject: [PATCH] fixed getPointer & drag functions for touch screen getPointer and drag were not setting position when using a touch device. This quick fix may not work properly when using multitouch but I didn't saw any problem on chrome emulation and on my phone. There is multiple ways to get the touch event's position and I might not use the best one. Maybe someone with experience in the matter could improve this solution? --- source/js/jquery-sortable.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/js/jquery-sortable.js b/source/js/jquery-sortable.js index 5fcccf3..b473cfd 100644 --- a/source/js/jquery-sortable.js +++ b/source/js/jquery-sortable.js @@ -268,8 +268,8 @@ groupDefaults.onDrag, e) - var x = e.pageX || e.originalEvent.pageX, - y = e.pageY || e.originalEvent.pageY, + var x = e.pageX || e.originalEvent.targetTouches[0].pageX, + y = e.pageY || e.originalEvent.targetTouches[0].pageY, box = this.sameResultBox, t = this.options.tolerance @@ -390,8 +390,8 @@ }, getPointer: function(e) { return { - left: e.pageX || e.originalEvent.pageX, - top: e.pageY || e.originalEvent.pageY + left: e.pageX || e.originalEvent.targetTouches[0].pageX, + top: e.pageY || e.originalEvent.targetTouches[0].pageY } }, setupDelayTimer: function () {