2016-07-26 43 views
1

在我的网站上,我需要切换完整文章的可见性。JS:防止图像加载后设置为显示惰性:块

当我使它们可见时(display:block),文本显示得非常快,而图像应该是白色的空间。在一半或一秒钟后,图像从一次出现(它之前从服务器加载,所以这不是概率xD)。

现在也许有一个解决方案,我可以在RAM中保存图像。

我甚至不知道如何调用这个问题,所以我在谷歌上找不到太多东西。

(将文章取出DOM-Tree以便将不透明度或可见性设置为0不是一个解决方案)。

+0

你的问题是什么? –

+0

可能是标题,只是缺少一个“如何” – Exar

回答

0

This SO answer解释清楚。简而言之,

如果您在页面上呈现HTML,即使它隐藏,它也会加载 。如果您希望图片仅在需要时才加载,则 必须在 javascript中动态设置图片代码上的来源(src)。

+0

那不是我的问题。该图像已从服务器加载。然后我用显示器隐藏它:没有。然后我再次用display:block显示它。然后它懒惰。 (可能是因为它不在RAM中) – Exar

+0

听起来像你在响应中有一些奇怪的缓存控制标题。或者你只是不等待图像完全加载,然后将其从DOM中删除(这会导致图像的获取在大多数浏览器上中止) – EJTH

1

它取决于浏览器如何存储和从缓存中提取图像。有很多因素,包括浏览器正在做什么,有多少图片,它们有多大等等。如果需要这么长时间,它们有可能被迫退出缓存或者它们太大或者其他问题。你有没有检查过,以确保它们确实被缓存了(再次,这可能有点依赖于浏览器)?还要确保您没有禁用缓存(在您的开发控制台或类似的地方)。

有很多潜在的选项来管理图像数据,这取决于你在做什么以获得最佳解决方案。

+0

谢谢,实际上帮助了我一下,因为我不知道任何关于这个。 – Exar