【发布时间】:2012-05-09 15:31:20
【问题描述】:
以下适用于 Chrome / FF 等...
$('body').animate({scrollTop : 0}, 0);
但是,在 IE 7 中,它什么也没做。
有其他选择吗?
【问题讨论】:
-
@Scorpion-Prince jQuery 动画绝对适用于 scrollTop。我在生产中多次使用它,跨浏览器。
标签: jquery cross-browser
以下适用于 Chrome / FF 等...
$('body').animate({scrollTop : 0}, 0);
但是,在 IE 7 中,它什么也没做。
有其他选择吗?
【问题讨论】:
标签: jquery cross-browser
EDIT正如许多人指出的那样,最好使用:
$('body, html').animate({scrollTop : 0}, 0);
【讨论】:
'body, html' 是更好的选择器(请参阅其他答案)。
$('body, html').animate({scrollTop : 0}, 0);
【讨论】:
在IE8中,我使用$(document).scrollTop()获取scrollTop属性,$('body').scrollTop()或$('html').scrollTop()总是返回0。
也许你可以使用
$(document).animate({scrollTop: 0}, 0);
$('html,body').animate({scrollTop: 0}, 0);
使其适用于所有浏览器。
【讨论】:
设置:
# FF、IE8
document.documentElement.scrollTop = 100;
# chrome
document.body.scrollTop = 100;
获取:
scrollTop = document.documentElement.scrollTop + document.body.scrollTop;
【讨论】: