在制作本博客相册的时候,用PHP实现了调用flickr图片库的功能。通过多维数组加载出不同的图片尺寸,实现了图片的快速预览。
但是在点击图片时,即查看大尺寸图片时由于调用远程大图片,需要等待一定时间,造成了用户体验上的不爽。
要改善这一缺憾,就需要用到今天介绍的图片预加载功能:
原理:通过一段代码,放在页面尾部,预先打开大图片,并保持隐藏。由于浏览器会把下载好的图片预存到缓存里,所以当点击查看该图片时会直接从缓存中调用,从而加快了显示速度。
实现方法:其实实现方法有很多,可以用html代码加载后再用css隐藏。当然JAVAscript也可以。我们今天用最简单的方法php+css:
echo '<div id="hide">';
echo '<img src="'.$photourl.'" style="visibility:hidden">';
echo '</div>';
以上是php代码,当然其实也就是输出html,其中$photourl为大图片地址变量。
接下来再加上css:
#hide {
height: 0px;
width: 0px;
visibility: hidden;
overflow: hidden;
}
其实在php输出时已经把图片隐藏了,但是还是会占用页面空间,再加到div里再次进行大小缩放至0,再把溢出隐藏这样对页面就不会造成影响。
可以看出用该方法实现的图片预加载非常简单,当然用JAVAscript也可以,原理差不多都一样。
php实现图片预加载就介绍到这里,大家可以查看陋室博客的相册来预览该功能:http://photo.malu.me/