【发布时间】:2015-06-11 20:23:07
【问题描述】:
说实话,我有点绝望。
在我的 Google Chrome 浏览器更新后——我认为从版本 39 到 41——我的一个客户网站在 Chrome 中完全毁容了。
你可以在这里看到它: http://prinovis-media-day.com/
如果向下滚动,所有 »视差« 元素都会闪烁。 我已经在我的 macbook 上查看了第 39 版——在第 39 版中绝对没问题。
基本上,我要创建这种效果的方法非常简单:
$("window").scroll(function(){
var move_value = Math.round(scroll_top * 0.3);
var opacity_value = *some other value*;
$(".parallax-container__content").css({
'opacity': opacity_value,
'padding-top': move_value +'px'
});
});
有人知道怎么回事吗?在这次更新之前,它就像一个魅力......
提前非常感谢,我非常感谢任何答案!
【问题讨论】:
-
您总是可以将 $(".parallax-container__content") 元素缓存在一个变量中,这样它就不会在每次触发滚动事件时都检索它,这也适用于不透明度值(除非它根据 scroll_tp 动态变化。这样做可能会导致脚本加速并帮助正在发生的卡顿
-
仅供参考:在我的“Chrome 40.0.2214.115 m”上运行良好
-
您可以尝试在“.prallax-container_content”的 CSS 中添加“过渡”。 w3schools.com/css/css3_transitions.asp
-
当我滚动时它们会跳动,但我不认为它们会闪烁(如快速出现和消失)。在 Chrome 41.0.2272.104(64 位)、OS X 10.10.3 beta 上。
-
非常感谢!!! @AdrianRoworth 我已将所有选择器放入 scroll() 函数之外的变量中……它提高了性能,但由于某种原因,错误仍然存在……(更改是实时的)还有其他想法吗?
标签: javascript jquery css google-chrome scroll