javascript - scrollIntoView 是否适用于所有浏览器?

标签 javascript jquery js-scrollintoview

scrollIntoView() 是否适用于所有浏览器?如果没有,是否有 jQuery 替代方案?

最佳答案

支持是的,但用户体验很差。

正如@9bits 所指出的,这一直是supported by all major browsers .不用担心。主要问题是它的工作方式。它只是跳转到可能位于页面末尾的特定元素。通过跳转到它,用户不知道是否:

  • 页面已向上滚动
  • 页面已向下滚动
  • 他们已被重定向到别处

前两个可以通过滚动位置来确定,但谁说用户在跳转完成之前就一直跟踪滚动位置?所以这是一个不确定的 Action 。

最后一个可能是正确的,特别是如果页面有移动标题被滚动到 View 之外并且剩余页面设计并不意味着在同一页面上有任何东西(如果它也没有'没有任何总高度垂直元素,如左侧菜单栏)。您会惊讶于有多少页面存在此问题。自己检查一下。转到某个页面,在顶部查看它,然后按 End 键并再次查看它。您可能会认为这是一个不同的页面。

动画 scrollintoview jQuery 插件来拯救

这就是为什么还有 plugins that perform scroll into view而不是使用原生 DOM 函数。他们通常使用动画滚动来消除上面列出的所有 3 个问题。用户可以轻松跟踪运动。

关于javascript - scrollIntoView 是否适用于所有浏览器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9445842/

相关文章:

javascript - 在 Tablesorter 中,为列过滤器的下拉选项设置不同的值

javascript - 如何知道滚动到元素是用 Javascript 完成的?

javascript - Chrome 中的 Element.scrollIntoView() 方法动画速度太慢

javascript - 扭曲的 websocket 聊天服务器 openid 身份验证

javascript - 数据库选择服务中的所有angular websql,获取数组

javascript - 如何使用 jQuery 向左侧绝对定位元素动态添加值?

javascript - 将元素滚动到容器内的 View 中,但不在浏览器窗口中

javascript - 从图表外部单击 highcharts 图表上的一个点

javascript - 解析服务器 user.getSessionToken() 未定义

php - 使用 $http.get 从 sql 数据库检索数据