Performance 网站上的滚动行为非常缓慢…;
我目前正在这个网站上工作 在浏览网站或使用上下箭头键导航时,您会注意到一种非常缓慢的滚动行为 知道是什么原因吗?我使用的是HTML5和简单的Performance 网站上的滚动行为非常缓慢…;,performance,html,css,Performance,Html,Css,我目前正在这个网站上工作 在浏览网站或使用上下箭头键导航时,您会注意到一种非常缓慢的滚动行为 知道是什么原因吗?我使用的是HTML5和简单的img标签,宽度和高度分别为85%和85%。Javascript不是原因。如果我完全摆脱所有的JS,它仍然是缓慢的 知道是什么原因吗?我想在滚动时提高这个网站的性能 感谢您的帮助。尝试缩小图像的比例,我认为这与js有关。在我的游戏装备上,滚动键和箭头键都像黄油一样平滑,在Chromebook上基本上无法使用。长短不一的是,你在一个页面上有5100万像素的图像
img
标签,宽度和高度分别为85%和85%。Javascript不是原因。如果我完全摆脱所有的JS,它仍然是缓慢的
知道是什么原因吗?我想在滚动时提高这个网站的性能
感谢您的帮助。尝试缩小图像的比例,我认为这与js有关。在我的游戏装备上,滚动键和箭头键都像黄油一样平滑,在Chromebook上基本上无法使用。长短不一的是,你在一个页面上有5100万像素的图像(可能是10MB左右?)。移动时的性能将在很大程度上取决于浏览器如何处理它(硬件加速与否)以及硬件本身。在操作系统中加入电源管理的笔记本电脑上尤其如此。例如,JS无法触发到专用图形的切换,这意味着移动所有这些像素是给CPU的(实际上不是它的本意) 可考虑的备选方案:
- 仅当用户向图像滚动时加载图像(加载完成后淡入淡出,以使图像看起来更漂亮)
- 加载图像后,删除/隐藏它们,直到用户滚动到它们,这样客户端就不必一直渲染所有图像(
将不起作用,但不透明度:0;
或显示:无;
可能会。您也可以直接删除节点,如果您重新添加它们,它们将立即加载,因为它们将被缓存。)可见性:隐藏;
- 将每个部分拆分为自己的页面。我知道它没有那么优雅,但可能是必要的。不是每个人都有400美元的GPU
注意:您必须使用CSS来保持图像容器的恒定高度,以便您的滚动高度不会改变并取代视图窗格。滚动对我来说非常平滑,但上/下箭头键不稳定。您确定JS不是问题吗?您知道滚动时加载图像的最佳方式吗?您会怎么做这样做?会的。就像@MattLo说的,你需要在你的图像上声明一个高度,这样滚动高度就准确了。你可能想看看插件的源代码,然后自己写,从概念上讲,它很容易实现。