Jquery Animate ScrollLeft无法在ipad上运行

时间:2012-08-16 21:23:12

标签: jquery html css ipad ipad-2

因此,即时开发这个网站,它在PC和Mac上完美运行,但在ipad上我遇到导航问题。

http://remedia-solutions.com/clientes/0039_kiplingmexico/demo2/

此代码将html,body移动到另一个部分。它在pc和mac上完美运行。但是,当我在ipad上它只是不起作用。

在这种情况下,它会移动到索引部分。

$("#ini").click(function() {
        if($("#todolocal").css("left") == '0px'){
            $("#todolocal").animate({left: '3500px'}, 1000,'easeInOutQuad',function(){
            $("#todolocal").css('left', '-2500px')
            $('html,body').stop(true,false).animate({
                scrollLeft: $("#todoini").offset().left ,
                scrollTop: 0}, 650);
         $('#todoini').stop(true,false).animate({
                scrollTop: 0 }, 650);
                lugar= 0;
                window.location.hash = '';
                document.title="Kipling: Inicio";
                $("#ini").addClass('focusini');
                $("#hist").removeClass('focushist');
                $("#col").removeClass('focuscoleccion');
                $("#cuid").removeClass('focuscuidados');
                $("#suc").removeClass('focussucursales');
                $("#cont").removeClass('focuscontacto');
                return false;
        });
        }
        if($("#todobolsas").css("left") == '0px'){
            $("#todobolsas").animate({left: '3500px'}, 1000,'easeInOutQuad',function(){
            $("#todobolsas").css('left', '-2500px')
            $('html,body').stop(true,false).animate({
                scrollLeft: $("#todoini").offset().left ,
                scrollTop: 0}, 650);
         $('#todoini').stop(true,false).animate({
                scrollTop: 0 }, 650);
                lugar= 0;
                window.location.hash = ''
                document.title="Kipling: Inicio";
                $("#ini").addClass('focusini');
                $("#hist").removeClass('focushist');
                $("#col").removeClass('focuscoleccion');
                $("#cuid").removeClass('focuscuidados');
                $("#suc").removeClass('focussucursales');
                $("#cont").removeClass('focuscontacto');
                return false;
        });
        }
        else{
        $('html,body').stop(true,false).animate({
                scrollLeft: $("#todoini").offset().left ,
                scrollTop: 0}, 650);
         $('#todoini').stop(true,false).animate({
                scrollTop: 0 }, 650);
                lugar= 0;
                window.location.hash = ''
                document.title="Kipling: Inicio";
                $("#ini").addClass('focusini');
                $("#hist").removeClass('focushist');
                $("#col").removeClass('focuscoleccion');
                $("#cuid").removeClass('focuscuidados');
                $("#suc").removeClass('focussucursales');
                $("#cont").removeClass('focuscontacto');
                return false;
            }
    });

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我通过一次一次动画来解决它,而不是同时制作它并且有效:)

$('html,body').stop(true,false).animate({
                scrollLeft: $("#todoini").offset().left}, 650,function(){
                    $(this).stop(true,false).animate({scrollTop:0})
                });
         $('#todoini').stop(true,false).animate({
                scrollTop: 0 }, 650);
                lugar= 0;
                window.location.hash = '';
                document.title="Kipling: Inicio";
                $("#ini").addClass('focusini');
                $("#hist").removeClass('focushist');
                $("#col").removeClass('focuscoleccion');
                $("#cuid").removeClass('focuscuidados');
                $("#suc").removeClass('focussucursales');
                $("#cont").removeClass('focuscontacto');

答案 1 :(得分:0)

在加载JavaScript之前,您是否明确设置了移动元素的CSS属性?此外,当动画左,上等时,你可以左边:350。没有必要用px封装引号。