1

という名前のページがあるとしましょうindex.html。ドキュメント内には、別のページのアンカーへのリンクがあります。だから言いましょう:

<a href="page.html#anchor" class="scroll">Link</a>

現在、同じドキュメント内のアンカーにアニメーションでスクロールする次のjQueryスクリプトがあります。

$(".scroll").click(function(event){     
    event.preventDefault();
    $('html,body').animate({scrollTop:$(this.hash).offset().top}, 500);
});

ただし、これはアンカーが同じページにある場合に機能します。別のページでも機能させるにはどうすればよいですか?リンクをクリックすると、他のページに移動してアンカーまでスクロールします。

4

1 に答える 1

3

あなたは次のようなものにあなたのアンカーを作る必要があります

<a href="2nd.html#anchor_temp">Go</a>

ブラウザのデフォルトのスクロール動作を防ぐことはできないため

ドキュメントの準備ができたら、URLからハッシュタグの値を確認し、_tempを削除して、それにアニメーション化する必要があります

$(document).ready(function(e){  
    var str= location.hash; 
    var n=str.replace("_temp","");
    $('html,body').animate({scrollTop:$(n).offset().top}, 500);
});

これがお役に立てば幸いです:)

于 2013-02-07T02:53:56.200 に答える