我想在我的页面上的特定div
加载页面,而不需要动画到那一点。以下是我现在正在使用的代码,它代表div
的动画。我还没有能够弄清楚如何在没有动画的情况下完成同样的功能。
jQuery的:
if(window.location.hash) {
var hash = window.location.hash;
var link = $("[href='"+ hash +"']");
if ( hash == "#specific-url" ) {
$('html, body').animate({
scrollTop: $("#specific-div").offset().top
}, 1000);
}
答案 0 :(得分:3)
而不是:
$('html, body').animate({
scrollTop: $("#specific-div").offset().top
}, 1000);
这样做:
$(document).scrollTop($("#specific-div").offset().top);
在您的代码中,您试图为文档的html,body
设置动画,因此当您想要移动到文档中的特定位置时,我认为您可以直接将文档的.scrollTop()
设置为我上面向你建议的方式。
答案 1 :(得分:2)
单行设置animate
时间0
ms
if(window.location.hash) {
var hash = window.location.hash;
var link = $("[href='"+ hash +"']");
if ( hash == "#specific-url" ) {
$('html, body').animate({
scrollTop: $("#specific-div").offset().top
}, 0);
}
<小时/> 您可以使用
$(document).scrollTop($("#specific-div").offset().top);
<小时/> .scrollIntoView()
$("#specific-div")[0].scrollIntoView(true);
或
document.getElementById(specific-div).scrollIntoView(true);