没有跳转的滚动窗口(javascript或#标签)

时间:2012-01-25 16:04:51

标签: javascript jquery scroll hashtag

我想要一个解决方案,使用指向锚标记或javascript名称的#标签。

我目前使用的javascript看起来像window.scroll(0, 20000);。问题是,当用户到达页面时,这会导致窗口抖动。

我知道有jQuery动画可以让这个动作更加渐进。但是,我想要的是使窗户的移动对用户来说难以察觉的东西。我希望好像用户降落在页面底部。

3 个答案:

答案 0 :(得分:2)

您遇到的问题是您希望转到尚未加载的页面底部。我会考虑以隐藏格式加载页面,然后在全部加载时以及在您想要的位置滚动用户后显示它。使用焦点或滚动到方法。

看看灯丝网站。

http://filamentgroup.com/

他们用加载屏幕隐藏页面,直到它准备就绪。

这种方式没有混蛋。

希望这有帮助。

答案 1 :(得分:0)

如果页面已完全加载并显示,则在循环中它可以工作:

for(var n=0;n<1000;n++) window.scrollBy(0,20);

(请注意,20 * 1000 = 20000,这是滚动的原始位置。)

答案 2 :(得分:0)

Teemu的答案对我来说似乎不起作用(它直接到底部,使scrollBy步进的循环不可见),因为它没有实现延迟。

如果您想在1000毫秒内从页面的顶部到底部进行动画处理,请尝试更类似的内容:

for (var n = 0; n < 1000; n += 1) {
    setTimeout(function () {
        window.scrollBy(0, document.height / 1000);
    }, n);
}

这将产生1秒(1000毫秒)的动画,以大约1000步的步长滚动到底部。

相关问题