8

更新をクリックすると、ブラウザがページを一番上にリセットするはずだと思いましたか?アコーディオンを使用してjsいます。更新すると、アコーディオンは閉じますが、ページが一番上に再配置されません。

http://imip.rvadv.com/index3.html

4

4 に答える 4

12

まあ、ご覧のとおり、そうではありません:)

ただし、いくつかの単純な jQuery を使用して強制することができます。

$(document).ready(function(){
    $(this).scrollTop(0);
});

編集:

IE 9、FF 12、および Chrome 20.0 で機能すると思われる唯一の方法は次のとおりです。

$(document).ready(function(){
    $('html').animate({scrollTop:0}, 1);
    $('body').animate({scrollTop:0}, 1);
});

奇妙なことに、アニメーションを適用せずに要素を直接スクロールしようとすると (つまり、$('html').scrollTop(0))、うまくいきませんでした。期間は 1 ミリ秒に設定されているため、ユーザーは何も気付かないでしょう。

誰かがこれに光を当てることができればうれしいです-スクロールがアニメーションでのみ機能するのはなぜですか?

于 2012-07-14T19:01:43.613 に答える
6

ブラウザは、便宜上、リロード前の場所までスクロールダウンします。非常に長いページの場合にのみ役立ちます。

これを次のように「修正」できます。

window.onload = function() {document.body.scrollTop = document.documentElement.scrollTop = 0;};
于 2012-07-14T19:01:42.327 に答える