Cualquier opción de position durante el desplazamiento por desbordamiento de webkit: toque evento

Tengo un div con webkit-overflow-scrolling configurado para tocar. En iOS esto me da una position actualizada durante el evento touchmove, pero una vez que el usuario deja de funcionar, este evento termina y se realiza una última llamada a touchend antes de que todos los events se detengan, pero el div continúa con el desplazamiento de impulso.

Este es el comportamiento que quiero, pero también quiero actualizar la página durante este desplazamiento de impulso.

Desencadenar una llamada a requestAnimationFrame cuando ocurre el evento touchend, y puedo hacerlo mientras se produce el scroll momentum. Pero cuando obtengo información de DOM, está congelada hasta que termina el desplazamiento de mometno.

He intentado usar tanto la position de desplazamiento del elemento de desplazamiento y elementoFromPoint, pero ambos solo tienen la position en la que se encontraba el div desplazado en el momento en que se activó el touchend, y no se actualizan hasta que finaliza el desplazamiento de momentum.

¿Alguien sabe de alguna manera para get información DOM en time real en iOS (6+, sin preocuparse de 5)

Aquí hay un código que estoy usando:

var glideStart; var bird_scanner = document.getElementById('bird-scanner'); bird_scanner.addEventListener('touchend',function() { glideStart = null; requestAnimationFrame(glide); }); function glide(timestamp) { // if we need to reset the timestamp if( glideStart === null ) { glideStart = timestamp; } // determine if we've moved var bird_scanner = document.getElementById('bird-scanner'); console.log( document.elementFromPoint(337,568) ); // calculate progress (keep running for a very long time so we see what happens when momentum ends) var progress = timestamp - glideStart; if( progress < 10000 ) { requestAnimationFrame(App.Controller.bird.glide); } } 

Actualizar

Después de muchos bashs al respecto, creo que realmente es imposible sin usar alguna biblioteca para intentar imitar el scroll de impulso en lugar de utilizar la opción incorporada (algo que, en mi opinión, nunca da resultados tan suaves). Apple está claramente muy preocupado por las cosas que interfieren con su animation de desplazamiento de impulso y evitan que se reproduzca correctamente.

Terminé de quitar el desplazamiento del impulso y solo detecté los movimientos y me moví a través de un grupo de elementos a la vez cuando eso se activó.

Me di count de un comportamiento particularmente extraño. Cuando tuve un desplazamiento de desbordamiento de webkit: toque establecer en un elemento que estaba desplazando la página hacia arriba / abajo y agregué un setTimeout (some_func, 0) al evento de final de session, la function no se activó hasta que el desplazamiento de impulso finalizó. Cuando probé lo mismo en un desplazamiento hacia la izquierda / derecha, activó la function de inmediato. Sin idea de por qué sucede esto, decidí que debe ser una extraña peculiaridad del webkit.