more digging...

Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
Alex A. Naanou 2013-02-18 18:43:18 +04:00
parent a63a401cc5
commit 44ed9b60e9
2 changed files with 29 additions and 20 deletions

View File

@ -108,6 +108,7 @@ $(document).ready(function(){
var scrolling = false var scrolling = false
var _x = null var _x = null
var _t = null var _t = null
USE_TRANSFORM = false
$('.viewer') $('.viewer')
.on('mousedown touchstart', function(){ .on('mousedown touchstart', function(){
@ -118,7 +119,6 @@ $(document).ready(function(){
}) })
.on('mousemove touchmove', function(evt){ .on('mousemove touchmove', function(evt){
logger.log('[drag]')
//var t = evt.timeStamp || Date.now(); //var t = evt.timeStamp || Date.now();
evt.preventDefault() evt.preventDefault()
if(_x == null){ if(_x == null){
@ -126,7 +126,9 @@ $(document).ready(function(){
} }
var x = evt.clientX var x = evt.clientX
if(scrolling && Math.abs(x-_x) > 6){ if(scrolling && Math.abs(x-_x) > 6){
shiftMagazineTo(getMagazineShift() + (x - _x)) var s = getMagazineShift()
logger.log('[drag: '+s+']')
shiftMagazineTo(s + (x - _x))
} }
_x = x _x = x
}) })

View File

@ -251,27 +251,34 @@ function shiftMagazineTo(offset){
// XXX this is almost the same as getElementScale... // XXX this is almost the same as getElementScale...
function getElementShift(elem){ function getElementShift(elem){
elem = $(elem) elem = $(elem)
var vendors = ['o', 'moz', 'ms', 'webkit'] if(USE_TRANSFORM){
var transform = elem.css('transform') var vendors = ['o', 'moz', 'ms', 'webkit']
var res var transform = elem.css('transform')
var res
// go through vendor prefixes... (hate this!) // go through vendor prefixes... (hate this!)
if(!transform || transform == 'none'){ if(!transform || transform == 'none'){
for(var i in vendors){ for(var i in vendors){
transform = elem.css('-' + vendors[i] + '-transform') transform = elem.css('-' + vendors[i] + '-transform')
if(transform && transform != 'none'){ if(transform && transform != 'none'){
break break
}
} }
} }
} // no transform is set...
// no transform is set... if(!transform || transform == 'none'){
if(!transform || transform == 'none'){ return {left: 0, top: 0}
return {left: 0, top: 0} }
} //return parseFloat(/translate\(([-.0-9]*),/.exec(transform)[1])
//return parseFloat(/translate\(([-.0-9]*),/.exec(transform)[1]) return {
return { left: parseFloat(/(translate\(|matrix\([^,]*,[^,]*,[^,]*,[^,]*,)([^,]*),/.exec(transform)[2]),
left: parseFloat(/(translate\(|matrix\([^,]*,[^,]*,[^,]*,[^,]*,)([^,]*),/.exec(transform)[2]), top: null
top: null }
} else {
return {
left: elem.position().left,
top: null
}
} }
} }