我正在放置一个画廊页面,图像显示在fancyBox。实际的图像是大文件,所以我正在运行一个php脚本来重新调整服务器端的原始图像文件的大小,并为fancyBox输出一个更小,更轻的版本。这样做的结果意味着图像的URL有一个像“/images/photo.php?image=001.jpg”。Fancybox自定义URL图像预加载
这样做意味着fancyBox必须强制进入图像模式,正如它通常所期望的.jpg文件一样,但它取而代之的是.php脚本。这个效果很好,但确实会造成fancyBox不再预加载下一张和前一张图片的问题。我最初的计划是使用更小/更轻/更快的加载图像,因为PHP脚本重新调整图像的尺寸需要一些时间,并且会在点击下一页和实际显示的新图像之间产生令人讨厌的延迟。能够预加载下一个/上一个将会有很大的帮助。
有没有人有任何想法,如果有可能强迫fancyBox预加载下一个图像,无论它指向的文件类型?
作为一个方面说明,不运行服务器端脚本来重新调整图像的大小会导致fancyBox和一些浏览器放弃加载图像并非常快地耗尽大量内存......每张图像大约2MB在重新调整大小之前。
任何意见赞赏。
这与您的预加载问题无关,但您应该绝对缓存图像的调整大小版本,而不是为每位访问者重新处理它们。有这样的图书馆,看看http://phpthumb.sourceforge.net/ – pixelistik 2012-07-11 12:59:01
为什么你不尝试用fancybox打开它们之前处理图像?一个php脚本可能会将重新调整后的版本写入另一个目录,然后让fancybox从那里加载它们。 – JFK 2012-07-11 15:49:18