problemas de desplazamiento de jquery en ipad

http://jqueryfordesigners.com/demo/scroll-link-nav.html

El enlace de arriba es más o menos lo que estoy buscando en términos del estado activo que responde a la posición de desplazamiento.

Pero si uno prueba esto en un iPad, el estado activo se queda en ciertos lugares y al tratar de navegar simplemente tocando los botones, deja de desplazarse después del primer toque.

¿Alguien sabe alguna solución para esto por los problemas del ipad?

preguntado el 22 de mayo de 12 a las 17:05

He dado una solución, déjame saber lo que piensas. -

2 Respuestas

Tengo una solución que hace el desplazamiento en todos los navegadores.

http://jsfiddle.net/t9mna/1/ todos los navegadores

$("nav ul li a").click(function(){
   $(".selected").removeClass("selected");
    $(this).addClass("selected");
    var $scrollTo = $($(this).attr("href"));
    $('html, body').animate({
    scrollTop: $scrollTo.offset().top
    }, 500);
});

y otro solo para iPad, no tengo un iPad, así que personalmente no puedo probarlo, así que déjame saber cómo va

http://jsfiddle.net/t9mna/3/ solo para iPad // no ha sido probado por mí

function isiPad() {
    return navigator.userAgent.match(/iPad/i); 
}


    $("nav ul li a").click(function(){
       $(".selected").removeClass("selected");
        $(this).addClass("selected");
        var $scrollTo = $($(this).attr("href"));
        $(function() {
        if ($(isiPad).length != 1) {
        $('html, body').animate({
        scrollTop: $scrollTo.offset().top
        }, 500);
    }
    });
    });​

contestado el 22 de mayo de 12 a las 19:05

Hola Yusaf, gracias por la respuesta. He probado ambos y ninguno parece funcionar en el iPad si el usuario quiere navegar simplemente tocando los botones de la izquierda. También noté que estos dos ejemplos no actualizan la clase seleccionada cuando se mueve el desplazamiento, como lo hacen en el enlace original enviado en la pregunta. He leído que el iPad mueve el contenido seleccionado hacia atrás una vez que se toca la pantalla, ¿hay alguna forma de desactivarlo? - trineo

Para ser honesto, no tengo ni idea, nunca he usado la navegación o la sección NUNCA, así que... puede haber otro problema, sin embargo, ser el ancla. prueba el html sin ninguno de los jQuery ( jsfiddle.net/t9mna/4 ) déjame saber si el desplazamiento aún funciona.... - Yusaf Jaliq

Desafortunadamente, todavía no hay alegría, lo publicaré de nuevo si encuentro algo, saludos, amigo. - trineo

tratan jsfiddle.net/t9mna/5 es todo lo que puedo pensar que podría resolver el problema - Yusaf Jaliq

    $("nav ul li a").click(function(){
    $(".selected").removeClass("selected");
    $(this).addClass("selected");
    var $scrollTo = $($(this).attr("href"));
    $(function() {
        if ($(isiPad).length != 1) {
            $('html, body').animate({
                scrollTop: $.scrollTo.offset().top //point 
            }, 500);
        }
    });
});​

Respondido 04 Abr '13, 04:04

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.