【问题标题】:jquery.ScrollTo not working correctly on iphone nor ipadjquery.ScrollTo 在 iphone 和 ipad 上无法正常工作
【发布时间】:2014-03-10 10:48:00
【问题描述】:

这是一个网页:http://kafe.zum.kz

我正在使用最新版本的 jquery.ScrollTo.min.js。但是,它在 iPhone 5 和最新的 iPad 上都无法正常工作。

您会在顶部看到一个菜单:

当你点击例如在“КОНТАКТЫ”上,它会向下滚动到带有id="contacts" 的div,但是当您在“КОНТАКТЫ”到“НАШЕ МЕНЮ”之后单击时,它首先会转到页面的最顶部,然后才会转到带有id="menu" 的div。这种行为只能在 iphone 和 ipad、android 或 windows 上满足。

它应该是这样工作的:单击“КОНТАКТЫ”会向下滚动到此部分,然后在此部分上单击“НАШЕ МЕНЮ”时会向上滚动到“НАШЕ МЕНЮ”部分。

这是我的 js:

// main menu scroll to section
var boks = ['.menu-469', '.menu-471', '.menu-470', '.menu-472', '.menu-473', '.menu-474', '.menu-475', '.menu-476', '.menu-477'];
var element = ['#about', '#zum-slider', '#afisha', '#photos', '#zumenu', '#hotdeals', '#partners', '#karta', '#contacts'];

for (var i = 0; i < 9; i++) {
    (function(i) {
        $('#main-menu li' + boks[i]).click(function() {
            $(window).scrollTo($(element[i]), 800);
            //alert(element[i]);
        });
    }(i));
}

我希望对你们有所帮助。提前致谢。

UPDATE1. 找到答案:iPad Flicker on auto scroll using JQuery and Scrollto plugin

去试试看。

【问题讨论】:

  • 我用过scroller_id.scrollTo(0,0);,它在android和ios上都运行良好。
  • 您的意思是您使用了相同的库 jquery.ScrollTo 并且它在两个操作系统中都运行良好?您是否在 IOS 中查看过我的网页以查看该行为?
  • 现在没有 mac 或 iphone。但是,是的,scrollTo 在 ios 中对我来说工作得很好。
  • 任何想法可能导致它进入顶部,然后才进入所需部分?
  • 不:/对不起。可能是 $(窗口)。但不确定

标签: jquery scroll


【解决方案1】:

您应该在您的选项对象中包含{axis: 'y'}。还要确保您没有启用中断选项。您可以使用{interrupt: false} 进行测试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    • 1970-01-01
    • 2018-08-22
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    相关资源
    最近更新 更多