我在我的网站上使用fotorama.io,并且我在滑块 (60-80) 中有一个大型图像库,所以我按照手册中的建议使用延迟加载来不一次加载我的所有图像。
但是当我浏览图像并且已经达到 40 多张图像时,我的浏览器内存已超载,浏览器开始响应缓慢,我有 Firefox 的 Memory Restart 插件,这表明我的内存非常高。
有没有办法使用延迟加载并保留例如 10 个图像,并卸载所有不可见的图像或 10+ 的图像以卸载以便清除内存?
我在我的网站上使用fotorama.io,并且我在滑块 (60-80) 中有一个大型图像库,所以我按照手册中的建议使用延迟加载来不一次加载我的所有图像。
但是当我浏览图像并且已经达到 40 多张图像时,我的浏览器内存已超载,浏览器开始响应缓慢,我有 Firefox 的 Memory Restart 插件,这表明我的内存非常高。
有没有办法使用延迟加载并保留例如 10 个图像,并卸载所有不可见的图像或 10+ 的图像以卸载以便清除内存?
浏览器会加载图像,即使它们已被 JavaScript 删除。以下示例中的所有图像将立即下载:
<div class="fotorama">
<img src="1.jpg">
<img src="2.jpg">
</div>
如果您不担心没有 JavaScript 的浏览器,请通过更改 HTML 来打开延迟加载:
<div class="fotorama">
<a href="1.jpg"></a>
<a href="2.jpg"></a>
</div>
添加缩略图:
<div class="fotorama">
<a href="1.jpg" data-thumb="1_thumb.jpg"></a>
<a href="2.jpg" data-thumb="2_thumb.jpg"></a>
</div>
这里的所有照片都使用这种图像嵌入方法。
是有趣的问题!我现在不能从内存中卸载图像,我认为浏览器必须自动管理它。顺便说一句,Fotorama 分离了不可见的图像。Аs 我知道这是大型画廊的最佳做法。
如果想延迟加载 img 标签,只需输入宽度和高度。
例子 :
<div class="fotorama" width="360" and height="360">
<img src="1.jpg">
<img src="2.jpg">
</div>
和它的工作!
PS:经过测试的响应式网站和所有浏览器。