所以我的页面设置了一个介绍部分,经过一段时间后,浏览器自动滚动到一个正常工作的指定div。我想要做的是让它在页面完全加载时运行而不是立即运行。 这是现有的代码,工作正常。
setTimeout(function(){
$(function() {
$('html, body').animate({
scrollTop: $('#myDiv').offset().top}, 2800);
});
},1300);
这就是我试图让它在页面加载而不是立即运行。这完全停止了滚动
$(window).load(function(){
$(function() {
$('html, body').animate({
scrollTop: $('#myDiv').offset().top}, 2800);
});
},1300);
答案 0 :(得分:0)
你不必将你的滚动函数包装在$(function(){...})中,因为我认为这可能会导致错误
$(window).load(function(){
$('body').animate({scrollTop: $(‘#myDiv’).offset().top}, 2800);
});
您还可以使用document.ready在DOM成功加载时滚动页面
$(document).ready(function(){
$('body').animate({scrollTop: $(‘#myDiv’).offset().top}, 2800);
});
答案 1 :(得分:0)
如果不必将内部函数包装到load
此外,您传递给load
一个不期望的参数。
让“滚动到div”代码成为'body'
事件的处理程序。
最后,只需将动画应用于window
或甚至$(window).load(function() {
$('body').animate({
scrollTop: $('#myDiv').offset().top}, 2800);
} );
foreach((array) $results['result'] as $kay => $result)
{
...
}