7

ハッシュを更新してからページをリロードしようとしています。

$('a[name="' + fragment + '"]').remove(); //don't jump before window reloads
window.location.hash = fragment;
window.location.reload(true);

ウィンドウをリロードした後、アンカー タグにジャンプしません。どうすれば修正できますか?

4

3 に答える 3

2

ページをリロードしている場合、これは jQuery で達成するのはかなり簡単です。window.location.hashページをロードするときにプロパティを確認してください。

$(document).ready( function( ) {
    if( window.location.hash ) { // just in case there is no hash
        $(document.body).animate({
            'scrollTop':   $( window.location.hash ).offset().top
        }, 2000);
    }
});

唯一の注意点は、ハッシュがスクロール先の要素の id と一致することです。

デモはこちら

于 2012-12-19T12:19:26.787 に答える
1

MOZILLA DEVELOPER NETWORKは次の使用を提案しreplaceます:

function reloadPageWithHash() {
  var initialPage = window.location.pathname;
  window.location.replace('http://example.com/#' + initialPage);
} 
于 2012-12-19T12:09:02.970 に答える