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 _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
})

View File

@ -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
}
}
}