【问题标题】:Navigate to page, scrollTop() always works. Refresh page, scrollTop() never works导航到页面,scrollTop() 始终有效。刷新页面,scrollTop() 永远不起作用
【发布时间】:2011-11-14 12:06:27
【问题描述】:

我有一个仅在 Safari 中发生的问题。我有一个 div,我试图在页面加载后自动滚动到某个位置。

如果我在 Safari 中输入页面的 URL 并按 Enter,则 div 无法正确滚动。如果我离开该页面,然后单击将我带回同一页面的链接,则 div 会正确滚动。如果我刷新页面,则 div 将恢复为不滚动。

几乎就好像滚动适用于已准备好的缓存但不适用于空缓存,但似乎进行软刷新不会清除 Safari 的缓存,所以我不认为就是这样。

这是我的代码的相关部分:

$(document).ready(function() {
  $("#under").scrollTop(400);
}

有什么想法吗?

【问题讨论】:

  • 在 Chrome 中工作?通常我发现 Safari 和 Chrome 在行为上相互反映。 should 工作时,小提琴也会很好。

标签: javascript jquery safari scroll


【解决方案1】:

Safari 有时会过早触发 DOM。改用 window.load:

$(window).load(function() {
  $("#under").scrollTop(400);
}

【讨论】:

  • 不幸的是,这似乎没有影响任何事情。
猜你喜欢
  • 2014-05-30
  • 2023-01-09
  • 2021-10-01
  • 2013-02-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-27
相关资源
最近更新 更多