JQuery图像预加载-动态图像集
我有一个滑块,它保持背景图像的动画效果。背景图像被应用到页面的主体元素,也就是说,它占据了页面的全部大小JQuery图像预加载-动态图像集,jquery,preload,Jquery,Preload,我有一个滑块,它保持背景图像的动画效果。背景图像被应用到页面的主体元素,也就是说,它占据了页面的全部大小 $("img").attr({ src: item.src }).appendTo("#target"); 此动画显示在主页上。。。滑块中总共有10个从数据库中获取的图像 $("img").attr({ src: item.src }).appendTo("#target")
$("img").attr({
src: item.src
}).appendTo("#target");
此动画显示在主页上。。。滑块中总共有10个从数据库中获取的图像
$("img").attr({
src: item.src
}).appendTo("#target");
我的问题是如何预加载这些图像,因为大多数图像的大小都超过200-300KB。jquery预加载需要图像名称的静态数组,但在加载时我不知道它们的名称
$("img").attr({
src: item.src
}).appendTo("#target");
所以你们能帮我预加载这些动态图像吗?这里有一个简单的脚本,可以帮助在使用javascript之前加载图像
$.each(data, function(index, item) {
var tempImage = new Image();
tempImage.src = item.url;
preloadedImages.push(tempImage);
}
where data as an array of image data
data=
{
name:'NameofImage',
url:'http://www.website.com/image1.jpg',
}
$("img").attr({
src: item.src
}).appendTo("#target");
要显示图像,只需将图像添加到DOM中即可
$("img").attr({
src: item.src
}).appendTo("#target");
我有一个简单的脚本演示。它从ajax请求中获取数据并预加载图像。当用户在目标上执行鼠标操作时,它会将图像附加到DOM
$("img").attr({
src: item.src
}).appendTo("#target");
下面是显示页面加载时正在加载图像的屏幕截图: $("img").attr({
src: item.src
}).appendTo("#target");
$("img").attr({
src: item.src
}).appendTo("#target");
这表明,在div中加载的隐藏图像可能不会在某些浏览器(如Opera)中预加载。我想我还没有证实
$("img").attr({
src: item.src
}).appendTo("#target");
如果您不想使用javascript,可能还有其他方法可以使用css加载图像
$("img").attr({
src: item.src
}).appendTo("#target");
希望这有帮助那么,您要求预加载您不知道文件名的图像?不行。要加载或预加载图像,您需要图像的URL。是的,加载时我不知道图像名称,因为这些值是从数据库返回的。因此,我是否应该首先发送ajax请求以获取文件名?当您有图像文件名时,您可以开始预加载。因此,请做您需要做的任何事情来获取文件名。感谢您的详细解释,但是如果您能仔细阅读,我不知道图像名称,因为它们是从数据库中获取的。然后我是否应该使用ajax请求从数据库中获取图像。。。由于这是一个主页,我不想让用户一直在主页上等待,这些会不会降低页面的速度。ajax调用是否有助于获取图像的名称/url?
$("img").attr({
src: item.src
}).appendTo("#target");