Evita que el desplazamiento ingrese al rellenarlo en la aplicación Android Phonegap
Estoy usando Telerik AppBuilder con Cordova versión 3.5
Mi problema es que no quiero que la vista web de mi aplicación se desplace. Cada vez que se necesita desplazamiento, quiero usar iScroll y manejaré el desplazamiento por mi código.
- Android: la entrada de html pierde foco cuando se abre el teclado virtual (ASP.net)
- Desactivación de la autocompletar para textarea y campos de entrada en Android Cordova-app
- Android 5 - Cambia la ruta de entrada de audio predeterminada para usar una tarjeta USB externa en Streaming
- Android EditText teclado numérico predeterminado y permitir texto
- Phonegap 2.1.0 y android 4.1: Problema de entrada de texto
Si una entrada obtiene el enfoque y no es visible por desplazamiento en iScroll, la aplicación automáticamente desplaza la vista web.
Evité el desplazamiento de las entradas de enfoque en android con este código en el manifiesto:
<preference name="android-windowSoftInputMode" value="adjustPan|stateVisible" />
Y para evitar el desplazamiento mientras escribía, mi siguiente idea fue:
- evitar el valor predeterminado en las teclas
- almacenar la tecla presionada
- desplácese a mi entrada en iScroll
- pegar la clave en la entrada (ahora su seguro visible y los niveles anteriores no desplazará la webview)
Pero el siguiente código en android v4.4.4 no impide el valor predeterminado:
$input.on( 'keypress', function(e) { e.preventDefault(); e.stopPropagation(); return false; });
¿Es esto un error? ¿Hay alguna solución para esto?
editar:
Para ver qué propiedad está cambiando el navegador, para poder cambiarlo de nuevo, busqué algunos elementos, pero no puedo encontrarlo:
- $ (ventana) .scrollTop () -> no está cambiando.
- margin-top y parte superior de los elemets utilizados por iScroll -> no están cambiando.
- Teclado Android: no inicializa el cliente de búfer compartido porque token = -12
- ¿Cómo puedo detener la capitalización automática en un campo de introducción de texto html en un teléfono Android / Samsung?
- Android EditText inputType para el campo StreetNumber
- Multitouch para Android: ACTION_UP no siempre se llama?
- Cómo utilizar InputConnectionWrapper?
- Android4 sólo el navegador de valores comportamiento extraño con texto de entrada
- Android OkHttp InputStream java.IOException.closed
- Cómo personalizar el tipo de entrada de texto Android
Sé que esta es una vieja pregunta, pero creo que su problema es que cuando se activa el evento de pulsación de teclas, el evento 'keydown' ya ha sido enviado a la entrada, que es el evento que envía la clave real. Keypress obtener disparado después de que, mientras que la celebración de las teclas de caracteres. por lo que debe tratar de prevenirDefault el evento 'keydown' y probablemente también 'keypress' en caso de repetidas letras mientras se mantiene.
$input.on( 'keydown keypress', function(e) { e.preventDefault(); });