我想在我的网站中使用this gallery。唯一的问题是,点击旁边加载图片时,需要很长时间。当用户点击图片放大图片时,我想预先载入下两张图片。在jQuery图库中预加载图像
我碰到过this solution,但它是手动编码图像名称,但我的图像是动态加载的。有什么其他方式可以做到吗?
我想在我的网站中使用this gallery。唯一的问题是,点击旁边加载图片时,需要很长时间。当用户点击图片放大图片时,我想预先载入下两张图片。在jQuery图库中预加载图像
我碰到过this solution,但它是手动编码图像名称,但我的图像是动态加载的。有什么其他方式可以做到吗?
这是一个简单的解决方案。您可以将点击事件添加到拇指,以便单击它时预加载下三张图像。一旦你在单独的图像导航下一个图像预加载的某些方面仍然会进行,虽然制定了,但希望这将HEP你有..
$("#content img").on("click",function(){ // use .live instead if you are using an older version of jQuery
var next = $(this).next();
for (var i = 0; i < 3; i++)
{
var img = new Image();
img.src = next.attr("alt");
next = next.next();
}
});
如果你的图像存储在一个mysql中,你可以使用你发现的解决方案,通过一些修改,从图像名称的sql查询中添加一个json编码。传递信息到jQuery的预加载
require_once('JSON.php');
$json = new Services_JSON();
$out = $json->encode($query)
你可以使用你所提到的解决方案,你只需要提取src
属性画廊的图片:
preload($('#gallery-images img').map(function() { return this.src; }));
这实际上将调用带有预紧功能所需的数组。
我推荐使用这个画廊 - http://dimsemenov.com/plugins/royal-slider/gallery/它究竟你需要什么 - 预先加载附近的图像,你可以设置多少预加载。但请注意,这是商业和成本大约10块钱。
感谢您的回复。这给了我一个未定义的错误。 – input 2011-12-18 23:36:51
经过一些调整后,这工作。非常感谢! – input 2011-12-19 00:12:35
@ fuz3d酷!听到那个消息很开心。对不起,我没有看到你的第一篇文章...我的猫睡着了,我很快就跟上了。 O_O – 2011-12-19 00:41:54