From 44ed9b60e981e30c3979d2cf21b09c4d48a7ddee Mon Sep 17 00:00:00 2001 From: "Alex A. Naanou" Date: Mon, 18 Feb 2013 18:43:18 +0400 Subject: [PATCH] more digging... Signed-off-by: Alex A. Naanou --- layout-iscroll2.html | 6 ++++-- magazine.js | 43 +++++++++++++++++++++++++------------------ 2 files changed, 29 insertions(+), 20 deletions(-) diff --git a/layout-iscroll2.html b/layout-iscroll2.html index c611245..5f1be27 100755 --- a/layout-iscroll2.html +++ b/layout-iscroll2.html @@ -108,6 +108,7 @@ $(document).ready(function(){ var scrolling = false var _x = null var _t = null + USE_TRANSFORM = false $('.viewer') .on('mousedown touchstart', function(){ @@ -118,7 +119,6 @@ $(document).ready(function(){ }) .on('mousemove touchmove', function(evt){ - logger.log('[drag]') //var t = evt.timeStamp || Date.now(); evt.preventDefault() if(_x == null){ @@ -126,7 +126,9 @@ $(document).ready(function(){ } var x = evt.clientX if(scrolling && Math.abs(x-_x) > 6){ - shiftMagazineTo(getMagazineShift() + (x - _x)) + var s = getMagazineShift() + logger.log('[drag: '+s+']') + shiftMagazineTo(s + (x - _x)) } _x = x }) diff --git a/magazine.js b/magazine.js index 10cfc58..f1ceb5b 100755 --- a/magazine.js +++ b/magazine.js @@ -251,27 +251,34 @@ function shiftMagazineTo(offset){ // XXX this is almost the same as getElementScale... function getElementShift(elem){ elem = $(elem) - var vendors = ['o', 'moz', 'ms', 'webkit'] - var transform = elem.css('transform') - var res + if(USE_TRANSFORM){ + var vendors = ['o', 'moz', 'ms', 'webkit'] + var transform = elem.css('transform') + var res - // go through vendor prefixes... (hate this!) - if(!transform || transform == 'none'){ - for(var i in vendors){ - transform = elem.css('-' + vendors[i] + '-transform') - if(transform && transform != 'none'){ - break + // go through vendor prefixes... (hate this!) + if(!transform || transform == 'none'){ + for(var i in vendors){ + transform = elem.css('-' + vendors[i] + '-transform') + if(transform && transform != 'none'){ + break + } } } - } - // no transform is set... - if(!transform || transform == 'none'){ - return {left: 0, top: 0} - } - //return parseFloat(/translate\(([-.0-9]*),/.exec(transform)[1]) - return { - left: parseFloat(/(translate\(|matrix\([^,]*,[^,]*,[^,]*,[^,]*,)([^,]*),/.exec(transform)[2]), - top: null + // no transform is set... + if(!transform || transform == 'none'){ + return {left: 0, top: 0} + } + //return parseFloat(/translate\(([-.0-9]*),/.exec(transform)[1]) + return { + left: parseFloat(/(translate\(|matrix\([^,]*,[^,]*,[^,]*,[^,]*,)([^,]*),/.exec(transform)[2]), + top: null + } + } else { + return { + left: elem.position().left, + top: null + } } }