使用javascript和锚链接时防止页面闪烁

时间:2017-05-08 17:22:03

标签: javascript html anchor

  1. 我在我的网站上使用scrollreveal,它大部分效果很好,但是 有时页面在div显示之前闪烁 在执行代码之前,让它看起来像页面正在加载 在重新加载后加载http://regen.no/samarbeidspartnere 页面,你清楚地看到问题。
  2. 有时使用#anchor链接到带有id的div时,页面也会闪烁。http://regen.no/start之间会发生变化 “ forsiden ”和“påmelding”页面在它之前闪烁 跳到目标div。
  3. 有什么方法可以解决这个问题吗? 感谢。

1 个答案:

答案 0 :(得分:0)

通过使用Chrome开发者工具中的performance标签,我进行了录制(在两个锚点之间切换),我注意到当链接被点击时,页面会直接进入,然后平滑的滚动效果需要地点。要用一个小例子来描述这个问题,我们假设用户位于#bottom并点击转到#top

  • 该页面直接转到#top
  • 发生平滑滚动效果,因此页面会返回#bottom
  • 平滑滚动回#top

这就是为什么你会得到这种闪烁和闪烁的结果。

也许你应该在你的js代码中使用event.preventDefault();