【问题标题】:Jquery window.scrollTo causes page to freezeJquery window.scrollTo 导致页面冻结
【发布时间】:2017-01-13 20:29:18
【问题描述】:

我正在重新设计一个具有 100% 屏幕高度标题的网站,当用户开始滚动时,该标题需要缩小到 0px。我遇到的问题是在标题缩小到 0px 后,页面的内容略高于窗口顶部。我尝试在标题缩小后使用“window.scrollTo(0,0)”,这有效,但在那之后我无法滚动任何内容。我的页面卡在顶部?演示 --> http://test-sandbox.000webhostapp.com

有没有人建议如何让页面继续滚动?或者也许是一种动画标题的方法,以便内容不会超过页面顶部?

【问题讨论】:

标签: javascript jquery html css scroll


【解决方案1】:

看起来发生这种情况是因为当您滚动并将标题的高度缩小到 0 时,div #headerlogo 的高度设置为 160 像素。将高度设置为 150px 为我做到了。我在 Chrome 中对此进行了测试,效果很好。您提供的代码在 Firefox 中正常运行,并且转换在 IE 中运行很奇怪。您应该为所有浏览器添加适当的转换声明。

    -webkit-transition: background-color 500ms ease-out 1s;
    -moz-transition: background-color 500ms ease-out 1s;
    -o-transition: background-color 500ms ease-out 1s;
     transition: background-color 500ms ease-out 1s;

【讨论】:

  • 提供的代码有效并且#headerlogo 完全显示在屏幕顶部吗?我使用 160px 作为 hack,因为这就是我的鼠标在中间滚轮的每次滚动点击时滚动的距离。
  • 是的,仅在 Firefox 中。在 Chrome 中,有额外的空间并将高度设置为 150 像素!在滚动之前,检查器中的重要 (screencast.com/t/uyYd2Q4uOa1) 为我做了这件事。在 IE 中,滑块从上到下过渡,其中一些被 header-logo 覆盖。
  • 我忘了说,页面在任何时候和所有浏览器上滚动时都不会冻结。
  • 嗯,我得到了不同的结果。这就是它当前呈现的方式 i.imgur.com/hjCd8lA.png ,这就是我希望它呈现的方式 i.imgur.com/hjCd8lA.png 。请注意导航栏下方的新项目 (#headerlogo)。
  • 我想我上传了一个没有 jQuery 滚动的版本。现在再试一次?
猜你喜欢
  • 2013-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-17
  • 1970-01-01
  • 2015-06-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多