我们目前在我们的网站 (www.teesaw.com) 上使用一个 highslide 画廊。画廊由托管在多个外部来源的许多图像组成。有时,我们的 PHP 脚本会引入对不存在(或被用户的 Web 过滤器阻止)的图像的引用,从而导致链接断开。
当使用滑块在图像之间移动时,当下一个图像是断开的链接时,它会卡在“加载”部分。有没有办法让 highslide 检测到这个并自动跳过它?
请帮忙!谢谢 :)
我们目前在我们的网站 (www.teesaw.com) 上使用一个 highslide 画廊。画廊由托管在多个外部来源的许多图像组成。有时,我们的 PHP 脚本会引入对不存在(或被用户的 Web 过滤器阻止)的图像的引用,从而导致链接断开。
当使用滑块在图像之间移动时,当下一个图像是断开的链接时,它会卡在“加载”部分。有没有办法让 highslide 检测到这个并自动跳过它?
请帮忙!谢谢 :)
这可以通过修改 highslide-full.js 本身的代码来解决,并在加载程序超时时放入一个调用您网站上的一些默认图像(如“哎呀!”图像)的例程。请参阅旧的 Highslide 论坛:
http://highslide.com/forum/viewtopic.php?f=1&t=16664&p=69519
还有这个解决方案,看起来很简单:
http://roadrash.no/hs-support/handle-missing-images.html
您只需将此代码放在 highslide-with-gallery.js 中的第 1266 行之后(或在 highslide-full.js 中的第 1473 行之后):
img.onerror = function () {
setTimeout(function () {
img.src = hs.graphicsDir + 'no-image.png';
if (hs.ie) { // FIX FOR IE9
img.width = img.naturalWidth;
img.height = img.naturalHeight;
}
}, 1000);
};