移动游猎的SVG太多了?

时间:2017-02-21 21:23:36

标签: javascript svg google-cloud-platform photoswipe hugo

我正在使用Hugo构建我的投资组合网站的照片库。代码不是最干净的代码,但它是使用HarpJS从我当前构建的巨大升级。我在这个过程中也学到了很多关于AWS和GCP的知识。

一切都在桌面上运行,直到昨天,一切都在移动设备上运行。

我在所有缩略图上运行了Primitive,并输出了2500个形状的SVG。这可能是主要的矫枉过正,但我​​喜欢这种细节水平的视觉效果。它变得非常绘画。

现在页面在Mobile Safari中不断崩溃,这会愚蠢地关闭Mac上的移动网络检查器 - 所以我不确定故障发生在哪里。

每个SVG约为150kb。当我交换SVG并再次使用JPG时,一切正常,即使这会使页面尺寸变大。我怀疑我的懒加载插件不起作用,但我不确定。 (我正在使用Unveil - luis-almeida.github.io/unveil。)

这是我的暂存资料库中图库页面的链接:staging.iammatthias.com

非常感谢任何帮助/建议!

1 个答案:

答案 0 :(得分:0)

毫无疑问,这是一个内存限制问题。 Safari移动在呈现svgs时具有内存限制。有一些文章可以解释这个问题 - 但它归结为严格限制你在页面上投掷的SVG的数量,以便一次性渲染(你的网站甚至在与所有这些SVG的桌面游猎中挣扎)。使用iOS的唯一方法是一次性地从服务器延迟加载图像,或者切换到不使用SVG用于此用例。

有几个链接可供阅读:

https://www.richdynamix.com/blog/svg-vs-png-in-sprites-an-ios-issue

https://discussions.apple.com/thread/7530327?start=0&tstart=0