2012-04-27 10 views
6

tengo una vista web, que se muestra en una aplicación hay una animación en la página, un temporizador digital, donde estoy mostrando las imágenes de cada dígito al igual que doce y treinta y nueve, 29:39, etc.javascript animación detenida en ios safari navegador webkit cuando el dedo está en la pantalla sin levantarlo

se está animando el uso setInterval en javascript dentro del problema de la página es que cuando pongo mi dedo en la pantalla, es decir, un toque sin levantar el dedo el navegador se detiene, lo que significa que la animación ya no se anima, se detiene en el lugar cuando mi dedo toca la pantalla, y continuará animado después de levantar el dedo

¿cómo puedo arreglar esto? oí que puedo usar prevenir el método predeterminado, pero ¿no ignoraría todos mis eventos en la página?

, básicamente, además del contador de tiempo en mi página web, también tengo algunas cosas que el usuario puede interactuar con, por lo que se espera para el evento click, etc.

por lo que definitivamente quieren mantener eso también favor ayuda

esto sucede en el dispositivo iOS ... Si me quedo en Brower escritorio, todo parece que se observó detención ok..not

Respuesta

0

conocer cuál es el problema. no tiene nada que ver con la solicitud ajax o con la CPU porque se introdujo un pequeño desplazamiento. Aparentemente, toda la animación se detendrá si estás desplazándote o yendo a desplazarte.

0

¿se interrumpe en caso de que se pulsa en cualquier lugar o sólo en el mostrador? Intenta prevenir los clics en el elemento contador. Por ejemplo ..

$('#counter-container').click(function() 
{ 
    e.preventDefault(); 

    return false; 
}); 

Editar: Al parecer, este no es un problema poco común. Cuando el iPhone necesite más recursos de CPU/memoria, detendrá la ejecución de javascript. Observe el uso de setInterval (ejecuta javascript en un intervalo dado hasta que se invoca clearInterval()) para detectar si una animación no se completó correctamente.
preguntas relacionadas:
User interaction sometimes screws up jQuery ajax requests in UIWebView
AJAX constantly look for server update? Javascript
https://discussions.apple.com/thread/2723866?start=0&tstart=0

+0

gracias señor, pero realmente se detiene cada vez que pongo el dedo en cualquier lugar de la vista web, no solo el contenedor de animación para que la solución no funcione – user1118019

+0

@ user1118019 Ver respuesta actualizada –

+0

gracias de nuevo por el seguimiento pero no estoy haciendo ajax solicitudes, y estoy animando algo simple, no creo que nunca roben recursos de CPU, etc. Nuestra solución de comprobar si la animación está hecha no funciona, quiero decir, primero, no sabemos qué está causando la animación detener, realmente dudo que es debido a la CPU. De nuevo, mi animación se reanuda para animar después de levantar el dedo, la animación es para un temporizador, digamos 10 segundos límite, el usuario debe hacer osmething dentro de esos 10 segundos, no puedo volver a animarlo porque le dará al usuario más de 10 segundo para hacer la tarea, lo cual rompe la regla. – user1118019

1

Sólo para cualquier persona que viene a través de esta tarde: Animaciones siempre alto en los navegadores web cuando se desplaza, que es lo que su vista web está anticipando por el toque de un dedo. Esto sucederá también en los navegadores de escritorio.

Cuestiones relacionadas