changeset 16:ebb3d1fa65d3

made scrolling more consistent across ipad and iphone
author Atul Varma <avarma@mozilla.com>
date Tue, 04 May 2010 21:47:44 -0700
parents d7761afdae70
children 1c26d07c71c6
files index.html
diffstat 1 files changed, 7 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/index.html	Tue May 04 21:27:58 2010 -0700
+++ b/index.html	Tue May 04 21:47:44 2010 -0700
@@ -250,6 +250,7 @@
 function makeScrollable() {
   var node = this;
   var lastY = 0;
+  var lastTime = 0;
   var lastDelta = 0;
   var floatScrollTop = 0;
   var touchMoved = false;
@@ -278,12 +279,16 @@
       $(node).removeClass("decelerating");
       event.preventDefault();
       lastY = event.targetTouches[0].pageY;
+      lastTime = new Date();
       touchMoved = false;
     });
 
     $(node).bind("touchmove", function(event) {
       event.preventDefault();
       var currY = event.targetTouches[0].pageY;
+      var time = new Date();
+      lastTimeDelta = time - lastTime;
+      lastTime = time;
       lastDelta = currY - lastY;
       accelerate(lastDelta);
       lastY = currY;
@@ -293,7 +298,8 @@
     $(node).bind("touchend", function(event) {
       event.preventDefault();
       if (touchMoved) {
-        accelerate(lastDelta * 20);
+        accelerate(lastDelta / lastTimeDelta *
+                   node.parentNode.clientHeight * 0.4275);
         $(node).addClass("decelerating");
       } else {
         var target = event.changedTouches[0].target;