此问题仅适用于移动版Safari。
在我的网站上,我有评论,我的产品顶部有评论明星。当用户点击评论星时,我希望屏幕向下滚动到产品的评论。在Android和桌面上,页面滚动为例外,但在iOS上它只是闪烁并保持在同一位置。
以下是代码:
$('html, body').animate({
scrollTop: $("#reviews").offset().top,
scrollLeft: 0
}, 400);
这是一个证明问题的jsbin。
由于
答案 0 :(得分:7)
我确实找到了问题的正确答案,scrollLeft在iOS中引发了问题。
$('html, body').animate({
scrollTop: $("#reviews").offset().top
}, 400);
这可以在http://jsbin.com/losuz/6/中进行测试。
为了进行比较,您可以在此处看到Oscar Paz答案中建议的功能:http://jsbin.com/losuz/5/
我更喜欢动画以获得幻灯片的流畅度,但奥斯卡的答案也是有效的。
答案 1 :(得分:2)
您是否尝试过 scrollIntoView ?
$('#reviews')[0].scrollIntoView();