javascript - 如何在移动设备中滚动到页面顶部

标签 javascript jquery html css angularjs

我在 onLoad 中使用以下代码转到页面顶部。 Javascript 中的 window.scrollTo(0,0) 它适用于浏览器,但不适用于任何移动设备。

最佳答案

有很多关于移动页面的“window.scrollTo(0,1) 修复”的文章。使用魔数(Magic Number)来设置超时可能会让用户感到沮丧。内容开始出现,用户开始向下滚动页面并消费信息,然后快速返回到页面顶部。更好的方法是这样的:

window.addEventListener("load", function() {
    setTimeout(function() {
        var scrollPos = window.pageYOffset || 
            document.documentElement.scrollTop || 
            document.body.scrollTop;

        // seems like the author of linked code source had a logic bug here
        // if you need to apply this, probably you will want to check scrollPos > 1

        // I keep the comment above - although it is wrong. You should 
        // not scroll, once the user already interacted with the page.
        // For further information, see the linked article below.
        if (scrollPos < 1) {
            window.scrollTo(0,1);
        }
    }, 0);
});

了解更多信息 - here is one article (脚本来自那里)

关于javascript - 如何在移动设备中滚动到页面顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35072707/

相关文章:

html - X 主题标题位置改变

javascript - 我可以在浏览器中运行 Jasmine + Protractor 测试吗?

javascript - 使用 javascript 设置样式意想不到的结果

javascript - d3js 删除元素的过渡

javascript - 带有 textpath 的 Snap.svg 文本未按预期进行动画处理

jquery - 使用 "enter"键发送带有自定义复选框/ radio 图像的表单

javascript - 使用 CSS 类,但无法找到它的定义位置

javascript - Jquery Ajax API错误: 400 Bad Request

jquery - 加载不同版本jquery时出现问题如何解决

html - 为什么框架集没有加载到页面中?