使用jQuery-Smooth-Scroll从一个页面到另一个页面?

时间:2011-01-21 09:04:27

标签: javascript jquery jquery-plugins smooth-scrolling

我目前正在使用jQuery-Smooth-Scroll平滑地向上和向下滚动到我的一个页面上的各个锚位置(第1页)。但是,我还希望能够做的是,从另一个页面(页面2)链接到Page1(将#bookmark附加到URL)并让jQuery-Smooth-Scroll选择我调用页面的事实使用#bookmark并在页面完成加载后顺利向下滚动到相关位置。我不知道这是否可能?

这是我正在使用的Smooth-Scroll版本:

https://github.com/kswedberg/jquery-smooth-scroll

我仍然是jQuery的新手,所以我可能会忽略一些明显的东西。

2 个答案:

答案 0 :(得分:7)

Ajma的答案应该足够了,但为了完整性:

alert(location.hash)

编辑:一个更完整的例子:

// on document.ready {
if (location.hash != '') {
    var a = $("a[name=" + location.hash.substring(1) + "]");
    // note that according to w3c specs, the url hash can also refer to the id
    // of an element. if so, the above statement becomes
    // var a = $(location.hash);
    if (a.length) {
        $('html,body').animate({
            scrollTop: $(a).offset().top
        }, 'slow');
    }
}
// }

答案 1 :(得分:3)

有可能,您希望在页面加载完成后将调用放入平滑滚动功能。在jQuery中,它使用$(document).ready(function(){your code});

你需要放入一些东西来解析你的网址以提取#bookmark然后调用平滑滚动。