这是我的网站用于调用图片的代码,它调用大约100张图片而且他们不会一次加载所有内容,你需要在页面上坐5分钟左右才能加载它们。我被告知这可能是http缓冲区大小或什么?无论如何,没有人愿意等待很长时间才能加载图片,所以我能做些什么(除了为50个图片的每个部分制作一个新页面之外)要么让它们全部加载,要么像扰流板一样标签只打开你打开的标签,然后加载更快。我曾经想过使用Javascript onload事件,但不知道我是如何在这里实现它的。
POI:这个页面最终可能有200个甚至高达500个图片,它们从24mp缩小到5mp,因此上传速度更快,但不下载,所以人们可以非常快速地看到它们。提前致谢
<?php
$dirname = "pictures/photos/Folder1/";
$images = scandir($dirname);
$ignore = Array(".", "..");
foreach($images as $curimg){
if(!in_array($curimg, $ignore)) {
echo "<a href=".$dirname.$curimg.">
<img style='border:4px ridge #9D552D; width:125px; margin: 10px;' src='./pictures/photos/Folder1/$curimg'/></a>";
}
}
答案 0 :(得分:0)
如果您不是编程专家,那么使用此jquery插件可能会对您感兴趣: http://www.appelsiini.net/projects/lazyload
如果使用正确,它将确保浏览器仅加载当前在屏幕上可见的图像。只要不向下滚动,折叠下方的图片就不会被加载。
如果你有很多图像,这样的方法可能是最理想的,因为页面加载速度更快,很多人永远不会向下滚动太多。
如果您对编程有一点经验,那么动态生成缩略图(例如使用GD lib - 默认情况下使用PHP - 或ImageMagick)将不会是一项艰巨的任务。但请记住,人们仍然需要下载所有这些缩略图 - 因此理想的方法可能是延迟加载和缩略图生成的组合。