我已经在这几个小时了,我根本无法理解。
基本上,我有很长的项目列表,可以在页面中填充。当用户点击其中一个项目时,我想将窗口滚动到最上面的内容将被加载(可能是糟糕的设计,我知道,但这是一个单独的问题)。
以下是我的脚本的样子:
<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正在正确加载,但是当我进行调用时,它什么都不做。
非常感谢任何帮助。
答案 0 :(得分:8)
jQuery没有scrollTo
方法。但您可以在对象上使用.scrollTop()
help。
$('#pagetop').scrollTop(800);
<强>更新强>
如果您只想要一个元素滚动到视图中,您可以使用本机DOM方法:
$('#pagetop')[0].scrollIntoView();
甚至
document.getElementById('pagetop').scrollIntoView();
演示:http://www.jsfiddle.net/UHhDT/
更新2
jQuerys scrollTop
也可用于.animate()
。
$(document.body).animate({scrollTop: $('#pagetop').offset().top}, 2000);
例如:
答案 1 :(得分:0)
您可以使用.scrollTop()