2012-06-20 19 views
7

は、私は、このリンクからjqueryのコードを得たときに:あなただけ HTMLファイルの先頭にいくつかの参照要素を使用していないのはなぜ How to scroll to top of page with JavaScript/jQuery?スクロール(ページの最後)ページのロード

、その後、同様

<div id="top"></div> 

と、ページの負荷は、単に行う

$(document).ready(function(){ 

    top.location.href = '#top'; 

}); 

この機能が起動した後、ブラウザのスクロールは、あなたは、単に

$(window).load(function(){ 

    top.location.href = '#top'; 

}); 

を行い、すべてがグーグルクロームで働いたがされていない場合は! Google Chromeでこのコードを修正する方法はありますか? このコードにアニメーションを追加する方法はありますか?スクロール速度や速い、遅いなど...

答えて

17

jQueryを使用している場合は、scrollTopを使用してスクロールできます。それは方法ですが、アニメーション化することもできます。 jQuery API Documentation for scrollTop

あなたがそうのようにそれを使用することができます:

$("html,body").scrollTop(0); 

またはアニメーション化:

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

$("html,body").animate({scrollTop: 0}, 1000); 

あなたはどんなイベントハンドラでこれを設定することができ、ここでドキュメントがあります

または

$(window).load(function() 
{ 
    $("html,body").animate({scrollTop: 0}, 1000); 
} 
+0

HTMLタグとbodyタグのターゲティングは、Chromeでも問題なく動作します。 – lewiguez

+0

ありがとう。今、このコードのスピードやアニメーションを追加する方法は? top.location.href = '#top'; – Alireza

+0

あなたは私が推測できる限り遠くに行くことはできません。アニメーション化できないようにスカラープロパティを設定していません。基本的に、アニメーションは単なるループで、値を増やします。これは、値を増分できないものに設定しているだけです。これで、#top要素の垂直位置とその垂直位置までのscrollTopを見つけることができます。あなたはアニメーションコードでscrollTopを0に設定せず、垂直位置の値に設定することでそれを行います。OKIDOKI。 – lewiguez

0

(私はあなたの方法は、グーグルクロームで動作しなかった理由を回答lewiguezは必ず実際に与えたが、まだありませんお勧めします。)

私のために働いているようだ。つまり、私はわかりませんしかし、ウィンドウの負荷について。私はリンクのクリックで実際の "top.location.href"行をテストしました。

$('#bottomlink').click(function(){ 
    top.location.href="#top"; 
    return false; 
}); 

これはページの上部にあります。

<p id="top">lorem ipsum</p> 

これはページ下部のリンクです。

<a id="bottomlink" href="#">Bottom Link</a> 
+0

ページ読み込み後にaotomatic scrollが必要です。私はそれを持っていますが、私の問題はGoogle Chromeです! – Alireza

+0

Chromeのエラーがコンソールにチェックされましたか? ? –

+0

bodyタグにid = "top"を入れてみましたが、現在はすべて動作していますが、このコードでスピードやアニメーションを追加する方法は?top.location.href = '#top'; – Alireza

関連する問題