jQuery scrollTo插件不起作用

Jam*_* W. 2 jquery jquery-plugins scrollto

我已经在这几个小时了,我根本想不出来.

基本上,我有很长的项目列表,可以在页面中填充.当用户点击其中一个项目时,我想将窗口滚动到最上面的内容将被加载(可能是糟糕的设计,我知道,但这是一个单独的问题).

以下是我的脚本的样子:

<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>
Run Code Online (Sandbox Code Playgroud)

这是我页面顶部的HTML:

<div id='header'>
<div id='pagetop'></div>
</div>
Run Code Online (Sandbox Code Playgroud)

这是失败的呼叫:

$.scrollTo('#pagetop',800)
Run Code Online (Sandbox Code Playgroud)

当我尝试运行此行时,它不会产生错误消息,因此我知道scrollTo正在正确加载,但是当我进行调用时,它什么都不做.

任何帮助将不胜感激.

jAn*_*ndy 8

jQuery没有scrollTo方法.但是您可以在对象上使用.scrollTop()帮助.

$('#pagetop').scrollTop(800);
Run Code Online (Sandbox Code Playgroud)

更新

如果您只想要一个元素滚动到视图中,您可以使用本机DOM方法:

$('#pagetop')[0].scrollIntoView();
Run Code Online (Sandbox Code Playgroud)

甚至

document.getElementById('pagetop').scrollIntoView();
Run Code Online (Sandbox Code Playgroud)

演示:http://www.jsfiddle.net/UHhDT/

更新2

jQuerys scrollTop也可用于.animate().

$(document.body).animate({scrollTop: $('#pagetop').offset().top}, 2000);
Run Code Online (Sandbox Code Playgroud)

例如:

演示:http://www.jsfiddle.net/UHhDT/1/