【问题标题】:jquery mobile scroll to top when scrolling back回滚时jquery mobile滚动到顶部
【发布时间】:2015-01-22 17:23:28
【问题描述】:

jquery mobile 有问题。我有一个包含许多 li 元素的长 DOM,但它不是列表视图。当我向下滚动时,一切正常,但是当我向上滚动一点时,页面会跳到页面顶部。有人知道我是如何处理的吗?

效果只在我的智能手机上,用 chrome 浏览器。

谢谢。

我尝试更新 ui-content 的布局。但这无济于事。

 $( ".ui-content" ).trigger( "updatelayout" );

我认为当我将一些像素滚动到顶部时,窗口大小会被显示的 chrome 导航栏更改,然后页面会跳转到顶部。

【问题讨论】:

  • 也许你理解错了。我不想滚动或跳到顶部。我想阻止它。当我网站上的 DOM 很长并且我滚动到顶部时,滚动位置会跳转到页面的开头。我不知道为什么。我在移动设备上的唯一想法是浏览器的导航栏在向上滚动时显示。这会改变窗口高度,并且可能 jquery mobile 会在此触发一些东西。

标签: jquery google-chrome jquery-mobile mobile


【解决方案1】:

Here 我在 jQuery Mobile 中使用 jQuery.mobile.silentScroll() 找到了解决该问题的一种方法,它滚动到特定的 Y 位置而不触发滚动事件侦听器。此方法不执行动画滚动。

<script>
        $(document).on('click', '.returnTopAction', function() {
            $.mobile.silentScroll(0);
        });
    </script>

您也可以使用下面的代码来实现动画滚动:

<script>
        $(document).on('click', '.returnTopAction', function() {
            $('html, body').animate({scrollTop: $("#arealistpage").offset().top}, 1000);
        });
    </script>

【讨论】:

  • 也许你理解错了。我不想滚动或跳到顶部。我想阻止它。当我网站上的 DOM 很长并且我滚动到顶部时,滚动位置会跳转到页面的开头。我不知道为什么。我在移动设备上的唯一想法是浏览器的导航栏在向上滚动时显示。这会改变窗口高度,也许 jquery mobile 会在此触发一些东西。
猜你喜欢
  • 2013-03-25
  • 2013-02-16
  • 1970-01-01
  • 2014-02-13
  • 2011-09-06
  • 1970-01-01
  • 2012-08-01
  • 1970-01-01
  • 2013-02-21
相关资源
最近更新 更多