首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery scrollTop是否停止运行最新版本的基于webkit的浏览器(Chrome版本61.0.3163.100)?

jQuery scrollTop是否停止运行最新版本的基于webkit的浏览器(Chrome版本61.0.3163.100)?
EN

Stack Overflow用户
提问于 2017-10-11 09:51:07
回答 2查看 332关注 0票数 1

有趣的是,这已经在所有浏览器上工作了很多年,但现在只是停止在最新版本的基于webkit的浏览器(Chrome和Opera)上工作。就在一个月前它还在工作,但现在不再工作了:

代码语言:javascript
复制
$(document.body).scrollTop(0);
  //or using animation
$(document.body).animate({
  scrollTop:0
}, 500, "swing");

控制台中没有打印任何错误,只是根本不能滚动。同样的代码在其他浏览器中运行良好,比如Microsoft Edge。

那么,有没有人能找出基于webkit的浏览器出了什么问题,或者jQuery应该更新才能与之协同工作?

请注意,我不想找到一种滚动它的方法(因为我知道我们不需要jQuery,而且总是有变通的办法),我只想要一些关于这方面的解释,因为这些代码已经使用了很多年,不应该停止工作。它会破坏很多网站的用户体验。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-11 10:35:09

不确定这是否是基于webkit的浏览器更新的目的,但看起来document.body并不被视为内部所有元素的直接容器(尽管如果在其上应用overflow:hidden,内部内容将被意外地删除)。滚动条似乎属于document.documentElement (由html标记表示)。因此,如果我们用document.documentElement替换document.body,它就会再次工作。但这可能不适用于其他浏览器(如Microsoft Edge),因此将两者都包含进来是安全的,例如:

代码语言:javascript
复制
$("html,body") ...
//or
$([document.documentElement, document.body]) ...

尽管如此,基于webkit的浏览器的这一更新仍然让人非常困惑。

票数 1
EN

Stack Overflow用户

发布于 2018-06-11 06:25:40

对我来说,scrollTop()也停止了工作。删除高度从html的CSS -奇迹,再次工作!在互联网的某个地方找到的.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46678521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档