【发布时间】:2020-01-02 21:32:03
【问题描述】:
您好,我正在使用此代码预加载一些我用作某些 div 的背景的图像。
我可视化了 chrome 控制台,实际上预加载有效,但在我看来,无论如何,当我启动应用程序时,有问题的 div 上会闪烁,好像图像 css 的调用与预加载无关它。
这是我的印象?我错过了 preload 方法中的任何内容吗?
在 jquery 中我使用:
$(window).load(function () {
let p_url = cc_object.p_url;
p_url = p_url + '/public/images/';
let cache = [];
$.preLoadImages = function () {
let args_len = arguments.length;
for (let i = args_len; i--;) {
let cacheImage = document.createElement('img');
cacheImage.src = arguments[i];
cache.push(cacheImage);
}
};
$.preLoadImages(
p_url + "dorso.png",
p_url + "t-z-amore-bg.jpg"
);
});
在css中:
.cont_game {
background: url(../images/t-z-amore-bg.jpg) no-repeat center center;
}
.cont_game .carta_estratta.empty {
background: url(../images/dorso.png) no-repeat center center;
}
你可以在https://www.casadeicartomanti.it/tarocchi/tarocchi-online/看到它的实际应用
【问题讨论】:
-
好吧,您正在加载图像,但是预加载图像要求您在需要它们之前加载它们。 css 将加载图像,除非您要等待 javascript 在加载 css 之前加载它们,否则这不会做任何事情。
-
另外,这实际上与 jquery 无关。如果您改用 javascript 标签,您可能会得到更多关注。
标签: jquery preloading image-preloader