2

現在、jQuery-Smooth-Scroll を使用して、自分のページ (ページ 1) のさまざまなアンカー位置までスムーズにスクロールしています。ただし、別のページ (ページ 2) からページ 1 にリンクし (#bookmark を URL に追加)、jQuery-Smooth-Scroll がページを呼び出しているという事実を拾うことができるようにしたいと考えています。 #bookmark を使用して、ページの読み込みが完了したら、関連する位置までスムーズにスクロールします。これが可能性であるかどうかはわかりませんか?

これは、私が使用している Smooth-Scroll のバージョンです。

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

私はまだjQueryに比較的慣れていないので、明らかなことを見落としているかもしれません。

4

2 に答える 2

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');
    }
}
// }
于 2011-01-21T13:40:42.643 に答える
3

ページの読み込みが完了したら、スムーズ スクロール機能を呼び出すことができます。jQuery では、 $(document).ready(function () { your code } ); を使用しています。

URL を解析して #bookmark を抽出し、スムーズ スクロールを呼び出すには、何かを入力する必要があります。

于 2011-01-21T09:14:17.537 に答える