2011-02-04 31 views
2

私はこれで何時間もしてきましたが、私はそれを理解できません。jQuery scrollToプラグインが動作しません

基本的に、私はページの下に人口の多い方法で取得するアイテムの長いリストを持っています。ユーザーがこれらのアイテムの1つをクリックすると、コンテンツをロードする場所の先頭にウィンドウをスクロールしたいと思います(間違いなくデザインが悪いと思いますが、それは別の問題です)。ここで

は私のスクリプトがどのように見えるかです:ここでは

<script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js'></script> 
<script type='text/javascript' src='scripts/jquery.jgrowl.js'></script> 
<script type='text/javascript' src='scripts/javascript.js'></script> 
<script type='text/javascript' src='scripts/supersized.js'></script> 
<script type='text/javascript' src='scripts/effects.core.js'></script> 
<script type='text/javascript' src='scripts/jquery.scrollTo-1.4.2-min.js'></script> 
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.js'></script> 

は私のページの最上部のHTMLです:

<div id='header'> 
<div id='pagetop'></div> 
</div> 

そして、これは失敗したコールです:

$.scrollTo('#pagetop',800) 

この行を実行しようとするとエラーメッセージが表示されないので、scrollToが正しくロードされていることがわかりますが、whe n私は電話をする、それは単に何もしない。

ご協力いただければ幸いです。

+0

使用することができますか? –

+0

あなたはエラーが発生しますか –

+0

@experimentXエラーはありません –

答えて

8

jQueryにはscrollToメソッドがありません。しかし、オブジェクトに.scrollTop()helpを使用することができます。

$('#pagetop').scrollTop(800); 

更新

あなただけのビューにスクロールする要素が必要な場合は、ネイティブのDOMメソッドを使用することができます

$('#pagetop')[0].scrollIntoView(); 

あるいは

document.getElementById('pagetop').scrollIntoView(); 

をデモ:​​

アップデート2

jQuerys scrollTop.animate()に使用することができます。例えば

$(document.body).animate({scrollTop: $('#pagetop').offset().top}, 2000); 

デモ:あなたは、問題のトラブルシューティングに役立つページ以上のページコンテンツへのリンクを持っていますかhttp://www.jsfiddle.net/UHhDT/1/

+0

.scrollTop()も機能しません。エラーや何もない、何も起こらない。また、scrollToはjQueryプラグインです。http://flesler.blogspot.com/2007/10/jqueryscrollto.html –

+0

@James:あなたはそのプラグインを使用していると言わなければなりません。 – jAndy

+0

.scrollIntoViewメソッドは他のすべてができなかったことをしたようです。すべての実用的な目的のために、これは私が探していたものですが、デザインのために、滑らかなアニメーションにして見栄えを良くしたいのですが、どうすればいいでしょうか? 説明のために:私は基本的に、ユーザーがページの上にスクロールするように強制したい、私は要素を動かすつもりはない。 ありがとうございます。 –

関連する問題