gratis - touchmove javascript
Aplicación web de Chrome y propagación por desplazamiento táctil (2)
Estoy en la feliz posición de reemplazar una aplicación Metro de Windows 8 con una aplicación empaquetada de Chrome. Por el momento, debe imitar la apariencia de la aplicación Metro. La página principal consiste en múltiples vistas web organizadas horizontalmente con una gran cantidad de desplazamiento horizontal posible. Me he encontrado con un problema al intentar desplazarme horizontalmente con un dispositivo táctil. Si el gesto de desplazamiento comienza en una vista web, está capturando el evento de desplazamiento y evitando que el host se desplace. El desbordamiento está oculto en todas las vistas web. Como forman la mayor parte del contenido de la página, los objetivos de desplazamiento válidos para el host son limitados.
Los contenidos de la vista web son interactivos, así que no puedo salirse con la suya colocando una superposición transparente sobre el contenido desplazable para capturar el evento, al menos no sin cierta forma de propagar los clics / toques a través de las propias vistas web.
¿Alguna idea de cómo esto podría lograrse?
¡Gracias por tu ayuda!
Si puede usar jQuery para lograrlo, hágalo de forma que cuando el cursor no esté encima de las vistas web, aplique el evento de desplazamiento a la página misma.
Voy a asumir un par de cosas aquí: diseñar una aplicación de Chrome es similar al diseño de una página web. Su solución de desplazamiento actual se basa en el uso de desbordamiento: oculto y con JavaScript solo para desplazarse.
Arreglé algo similar una vez por una página. Es extraño, pero aprendí que para los dispositivos táctiles, una barra de desplazamiento es invisible a menos que el usuario interactúe con ella. Si cambia el estilo a overflow-x: scroll ... aparecerá una barra de desplazamiento (y tendrá que lidiar con eso más adelante para el escritorio con Modernizr o de alguna manera similar para detectar dispositivos habilitados para touch). Luego comenta tu código de desplazamiento (temporalmente, por supuesto, porque lo necesitarás para no tocarlo). Si se desplaza bien con el cambio de desbordamiento y el desplazamiento cambia, entonces todo lo que tiene que hacer a continuación es detectar el toque y condicionalmente activar el script y cambiar el desbordamiento de manera apropiada.