lunes, 16 de junio de 2014

scrollTop no funciona en IOS (Solución)

En el trabajo haciendo responsivo el sitio web de Trilce todo iba bien, hasta que al testearlo en un Ipad Mini me topé con un problema, y es que scrollTop no funciona en dispositivos móviles de Apple
Se apreciaba un efecto de parpadeo indeseable y te digo que no es tu culpa.

$('html,body').animate(
  {
   scrollTop: 100,
   scrollLeft: 200
  }, 
    800, 
   function(){
    $('html,body').clearQueue();
    }
);
Es un bug y la solución que le dí es está

if (navigator.userAgent.match(/(iPod|iPhone|iPad)/)) {    //detectamos el navegador        
            window.scrollTo(200,100) // el primer valor es izquierda, el segundo es el top
}else{
  $('html,body').animate({
   scrollTop: 100,
   scrollLeft: 200
            }, 800, function(){
   $('html,body').clearQueue();
   });
}
Espero les sea de utilidad.

0 comentarios:

Publicar un comentario