6

ページが読み込まれると、約 50px 下にスクロールする必要があります。これは私が使用しているものです:

$(window).load(function(){
    $("html,body").scrollTop(55);
});

私も試しました:

scrollTo(0,55)

これは Firefox と IE では問題なく動作しますが、Chrome、Safari、Opera では適切な位置までスクロールしてから、一番上 (または最後のスクロール位置) に戻ります。

また、要素 ID を使用して下にスクロールしようとしましたが、ブラウザーはまだそれを上書きします。私はこのように試しました:

htttp://website.com#element
4

6 に答える 6

4

あなたの問題は、 $(window).load を使用していて、まだ完全にレンダリングされていないため、一部のブラウザーで問題が発生していることだと思います。に交換してみる

$(document).ready(function(){
    $("html,body").scrollTop(55);
});

ここのすべてのブラウザーで正常に動作するようですhttp://jsfiddle.net/7jwRk/1/

情報

$(document).ready

HTML ドキュメントが読み込まれ、DOM の準備ができたときに実行されます

$(window).load

すべてのフレーム、オブジェクト、画像を含む完全なページが完全に読み込まれたときに実行されます

于 2013-10-18T13:31:40.233 に答える
2

scrollIntoView() 関数を使用できます。これは、ほとんどのブラウザー (IE6 を含む) でサポートされています。

document.getElementById('header').scrollIntoView()
于 2013-10-18T13:35:16.593 に答える
2
<script type="text/javascript">
   $(document).ready(function(){
     var divLoc = $('#123').offset();
     $('html, body').animate({scrollTop: divLoc.top}, "slow");
 });
 </script>

id="123" を追加<div>すると、ページの読み込み時に自動的に下にスクロールされます。

前のスクリプトが機能しない場合は、別のスクリプトを使用してください。

  <script>
 window.setInterval(function() {
 var elem = document.getElementById('fixed');
 elem.scrollTop = elem.scrollHeight;  }, 3000);
 </script>

id="fixed" を追加<div>すると、ページの読み込み時に自動的に下にスクロールされます。

于 2016-06-08T06:07:32.913 に答える
0

または、体の最後でこれを発射するだけです:

...
    <script type="text/javascript">
        $("html,body").scrollTop(55);
    </script>
</body>
</html>
于 2013-10-18T13:41:20.013 に答える
0

をいじってscrollIntoView()、ページの描画時に正しくスクロールし、理由もなく一番上にスナップするのを観察した後、私はこれに行きました:

http://website.com/#target

<a name="target">

次に、ブラウザは私が必要としているものを正確に理解し、それを実行します。しかし、これができるのは URI を制御しているからです。当然、すべての状況で機能するとは限りません。

于 2021-02-16T16:35:28.527 に答える