使用JS预加载图像仍会导致图像闪烁

时间:2013-09-05 17:41:05

标签: html css preload

看看下面的例子:

http://jsfiddle.net/LdukG/6/

有一个div在悬停时被赋予不同的背景。在这种情况下,图像的尺寸有点大,以说明我的观点。

我在JavaScript中有基本的图像预加载设置来预加载这个悬停图像。打开Chrome Dev Tools并查看“网络”选项卡。如果清除SHIFT +重新加载页面,您将看到预加载背景悬停图像已预先加载。

但仍有图片Flash

但是,如果将鼠标悬停在图像上并仔细观察,则会在显示悬停图像之前看到图像有短暂的白色闪烁。如果您不预加载图像,则会看到相同类型的图像闪光。此外,如果您观看网络选项卡,您将看到当您首次将鼠标悬停在div上时,它会加载背景悬停图像AGAIN。所以现在它在那里两次。

这让我觉得图像预加载根本不起作用。但如果是这种情况,那么为什么预装图像会显示在Chrome开发工具网络标签下?

这是JS预加载脚本:

var image = new Image();
image.src = "http://us.123rf.com/400wm/400/400/zmkstudio/zmkstudio1103/zmkstudio110300066/8993167-abstract-water-color-painting-random-red-texture-background.jpg";

这里有什么问题?

0 个答案:

没有答案