Javascript iPhone Scroll-Effekt in einer iFrame / Javascript-Mausbeschleunigung

Ich versuche, das iPhone-Flick / Scroll-Ereignis in einem Fenster mit JavaScript neu zu erstellen.

Start mit JQuery messe ich die Beschleunigung und den Versatz der Maus beim Klicken, Ziehen und Freigeben von Ereignissen mithilfe eines Timers:

var MouseY = {

    init: function(context) {
        var self = this;
        self._context = context || window
        self._down = false;
        self._now = 0;
        self._last = 0;
        self._offset = 0;
        self._timer = 0;
        self._acceleration = 0;

        $(self._context).mousedown(function() {self._down = true;});
        $(self._context).mouseup(function() {self._down = false;});
        $(self._context).mousemove(function(e) {self.move(e);});

    },

    move: function(e) {
        var self = this;
        self._timer++;
        self._last = self._now;
        self._now = e.clientY + window.document.body.scrollTop;
        self._offset = self._now - self._last;
        self._acceleration = self._offset / self._timer;
    },

    reset: function() {
        this._offset = 0;
        this._acceleration = 0;
        this._timer = 0;
    }
};


$(function() {
    MouseY.init();
    setInterval(function() {
        $('#info').html(
            '_acceleration:' + MouseY._acceleration + '<br />' +
            '_now:' + MouseY._now + '<br />' +
            '_offset:' + MouseY._offset + '<br />' +
            '_timer:' + MouseY._timer + '<br />'
        );
        MouseY.reset();
    }, 10);

});

Jetzt besteht das Problem darin, diese Beschleunigung in Bildschirmbewegungen umzusetzen - gibt es Algorithmen (Beschleunigung?) Oder Animationsbibliotheken, die mir dabei helfen könnten? (Ich habe in JQueries .animate () nachgesehen, bin mir aber nicht sicher, wie ich es während der Drag-Ereignisse kontinuierlich anwenden soll!

Update - endgültige Lösung hier:

http: //johnboxall.github.com/iphone.htm

Antworten auf die Frage(6)

Ihre Antwort auf die Frage