Javascript 预加载图像以设置为背景图像
我正在尝试预加载一些图像并将它们设置为背景图像。我显示的是正在加载图像,但它们不是作为背景图像引入的,而是,Javascript 预加载图像以设置为背景图像,javascript,jquery,Javascript,Jquery,我正在尝试预加载一些图像并将它们设置为背景图像。我显示的是正在加载图像,但它们不是作为背景图像引入的,而是,“+images+””; 原理图。添加类(“原理图”); css(“背景图像”、“url”(+image_src+)); $(“#菜单”)。附加(示意图); } 函数preload image从不返回值,因此从不设置src属性。为确保调用函数后不会清理对象,我会将对象返回到属性: for(var images in Plane_Images){ var schematic = $(
“+images+””;
原理图。添加类(“原理图”);
css(“背景图像”、“url”(+image_src+));
$(“#菜单”)。附加(示意图);
}
函数preload image
从不返回值,因此从不设置src
属性。为确保调用函数后不会清理对象,我会将对象返回到属性:
for(var images in Plane_Images){
var schematic = $("<div data-id='" +id +"_menu' data-url='" +image_src +"'><div class='label'><p>" +images +"</p></div></div>");
schematic.addClass("schematics");
schematic.css("background-image", "url(" +image_src +")");
$("#menu").append(schematic);
}
并通过以下方式访问src:
function preloadImage(url){
...
return imgObj;
}
var Plane_Images = {
Skin: {
name: "Skin Schematic",
image: preloadImage("images/Top.png"),
schematics: ["A", "B", "C", "D"]
},
}
因此,有两个答案:函数应该返回一些东西。我将返回对象,这样,如果在函数执行后清除图像对象,预加载不会取消
此外,您的设置功能看起来有点不正常:
var image_src = current.image.src;
应该读到:
for(var images in Plane_Images){
请参见
preload image
函数从不返回值,因此从不设置src
属性。为确保调用函数后不会清理对象,我将将对象返回到属性:
for(var images in Plane_Images){
var schematic = $("<div data-id='" +id +"_menu' data-url='" +image_src +"'><div class='label'><p>" +images +"</p></div></div>");
schematic.addClass("schematics");
schematic.css("background-image", "url(" +image_src +")");
$("#menu").append(schematic);
}
并通过以下方式访问src:
function preloadImage(url){
...
return imgObj;
}
var Plane_Images = {
Skin: {
name: "Skin Schematic",
image: preloadImage("images/Top.png"),
schematics: ["A", "B", "C", "D"]
},
}
因此,有两个答案:函数应该返回一些东西。我将返回对象,这样,如果在函数执行后清除图像对象,预加载不会取消
此外,您的设置功能看起来有点不正常:
var image_src = current.image.src;
应该读到:
for(var images in Plane_Images){
请参见
preload image
函数从不返回值,因此从不设置src
属性。为确保调用函数后不会清理对象,我将将对象返回到属性:
for(var images in Plane_Images){
var schematic = $("<div data-id='" +id +"_menu' data-url='" +image_src +"'><div class='label'><p>" +images +"</p></div></div>");
schematic.addClass("schematics");
schematic.css("background-image", "url(" +image_src +")");
$("#menu").append(schematic);
}
并通过以下方式访问src:
function preloadImage(url){
...
return imgObj;
}
var Plane_Images = {
Skin: {
name: "Skin Schematic",
image: preloadImage("images/Top.png"),
schematics: ["A", "B", "C", "D"]
},
}
因此,有两个答案:函数应该返回一些东西。我将返回对象,这样,如果在函数执行后清除图像对象,预加载不会取消
此外,您的设置功能看起来有点不正常:
var image_src = current.image.src;
应该读到:
for(var images in Plane_Images){
请参见
preload image
函数从不返回值,因此从不设置src
属性。为确保调用函数后不会清理对象,我将将对象返回到属性:
for(var images in Plane_Images){
var schematic = $("<div data-id='" +id +"_menu' data-url='" +image_src +"'><div class='label'><p>" +images +"</p></div></div>");
schematic.addClass("schematics");
schematic.css("background-image", "url(" +image_src +")");
$("#menu").append(schematic);
}
并通过以下方式访问src:
function preloadImage(url){
...
return imgObj;
}
var Plane_Images = {
Skin: {
name: "Skin Schematic",
image: preloadImage("images/Top.png"),
schematics: ["A", "B", "C", "D"]
},
}
因此,有两个答案:函数应该返回一些东西。我将返回对象,这样,如果在函数执行后清除图像对象,预加载不会取消
此外,您的设置功能看起来有点不正常:
var image_src = current.image.src;
应该读到:
for(var images in Plane_Images){
请参见这里有一种预加载图像以用作背景图像属性的替代方法
for(var image_name in Plane_images){
var current = Plabe_images[image_name];
var image_src = current.image.src; // Or however you store the source.
下面是一种预加载图像以用作背景图像属性的替代方法
for(var image_name in Plane_images){
var current = Plabe_images[image_name];
var image_src = current.image.src; // Or however you store the source.
下面是一种预加载图像以用作背景图像属性的替代方法
for(var image_name in Plane_images){
var current = Plabe_images[image_name];
var image_src = current.image.src; // Or however you store the source.
下面是一种预加载图像以用作背景图像属性的替代方法
for(var image_name in Plane_images){
var current = Plabe_images[image_name];
var image_src = current.image.src; // Or however you store the source.
for
循环是如何启动的?在运行该脚本之前,是否等待所有的预加载的图像?加载文档时,for循环自动启动for
循环是如何启动的?在运行该脚本之前,是否等待所有的预加载的图像?for循环启动加载文档时自动启动for
循环如何启动?在运行该脚本之前是否等待所有预加载的图像?加载文档时自动启动for循环如何启动for
循环?是否等待所有预加载的图像运行该脚本?加载文档时,for循环会自动启动。但这并不能帮助我解释为什么没有将其设置为背景图像。请参阅最近对我的答案所做的更改。嗯,我没有试图听起来粗鲁或其他什么,但for循环完全相同,您所做的只是更改变量名。此外,当我执行控制台时.log(图像\u src)
从你的例子中,我得到了未定义的我实际上让它工作了,我把return语句放在了错误的地方。很抱歉,太难了。我刚刚编辑了答案,使image\u src=current.image.src
符合上面另一个例子的模式。这无助于我解释为什么它没有被设置为backg尽管是圆形的图像。请看我的答案最近的变化。嗯,我不想听起来很粗鲁,但for循环完全相同,您所做的只是更改变量名。另外,当我执行console.log(image\u src)时
从你的例子中,我得到了未定义的我实际上让它工作了,我把return语句放在了错误的地方。很抱歉,太难了。我刚刚编辑了答案,使image\u src=current.image.src
符合上面另一个例子的模式。这无助于我解释为什么它没有被设置为backg尽管是圆形的图像。请看我的答案最近的变化。嗯,我不想听起来很粗鲁,但for循环完全相同,您所做的只是更改变量名。另外,当我执行console.log(image\u src)时
从你的例子中,我得到了未定义的我实际上让它工作了,我把return语句放在了错误的地方。很抱歉,太难了。我刚刚编辑了答案,使image\u src=current.image.src
符合上面另一个例子的模式。这无助于我解释为什么它没有被设置为backg尽管是圆形的图像。请看我的答案最近的变化。嗯,我不想听起来很粗鲁,但for循环完全相同,您所做的只是更改变量名。另外,当我执行console.log(image\u src)时
从您的示例中,我得到了未定义的
我实际上让它工作了,我把return语句放在了错误的位置。很抱歉,太难了。我刚刚编辑了答案,使image\u src=current.image.src