Jquery Mobile swipe eventos en Android 4.2.2 no funciona
He escrito una aplicación web móvil que utiliza los eventos swipeleft y swiperight móviles de JQuery, pero éstos no funcionan en un Samsung Galaxy S4 con Android 4.2.2. La ejecución de la aplicación web en el navegador web estándar o en Chrome tiene el mismo problema: no se detectan los eventos de desplazamiento.
Lo siguiente es cómo estoy tratando de detectar los eventos que funciona bien en otros dispositivos que he probado en, incluso los dispositivos Android (pero no Android 4.2.2):
- Abrir imagen con el visor de imágenes predeterminado en Android
- El sonido de los medios de comunicación de teléfono deja de reproducir después de 5 veces
- No se puede cargar el archivo xml con jquery en el proyecto de phonegap desde la ruta de los recursos
- El teclado de Android se superpone al problema de la caja de texto
- Seleccione el estilo de la caja en Android 2.3 diferente de Android 4.2
$('#showImage').on("swipeleft", function (event) { if (currentScale != initialScale) return; if (currentPage < maxPage) { ++currentPage; img.src = document.getElementById("page" + zeroPad(currentPage, 2) + "url").value; } }); $('#showImage').on("swiperight", function (event) { if (currentScale != initialScale) return; if (currentPage > 1) { --currentPage; img.src = document.getElementById("page" + zeroPad(currentPage, 2) + "url").value; } });
¿Hay algo que pueda hacer, por código, para capturar estos eventos en Android 4.2.2?
- Cambiar el color de arrastrar cursor del cuadro de entrada de webview de android
- Evento de clic de JQuery de un elemento div en li no disparado en Safari móvil
- Phonegap, JQM y Android Slow Performance
- JQuery-mobile transitions judder en Android
- <Select> no funciona en la aplicación Phonegap en Android 2.3.3
- PhoneGap / JQuery Mobile - El estilo de página se rompe cuando el teclado está visible
- Error sin capturar: SECURITY_ERR: DOM Exception 18 en el archivo: ///android_asset/www/js/DB.js
- ¿cómo puedo obtener el valor de webkit-column-count y la página actual o ID de columna?
Tienes dos problemas aquí.
La primera es causada por un error en JQM que se ha resuelto pero aún no está implementado https://github.com/jquery/jquery-mobile/issues/5534
Básicamente, la distancia mínima medida por el evento swipe debe tener en cuenta la densidad de píxeles del dispositivo. Por lo tanto, en el caso de JQM, el siguiente cambio en touch.js resolverá el problema:
horizontalDistanceThreshold = window.devicePixelRatio >= 2 ? 15 : 30; verticalDistanceThreshold = window.devicePixelRatio >= 2 ? 15 : 30;
El segundo es todo con kitkat disparando un touchcancel en lugar de un touchend. La solución es delegar touchcancel a touchend.
- Cómo crear una tarjeta de estilo android estilo listview
- Usando Gson para deserializar a Json en un singleton