我正在开发摄影作品集网站。我想知道从数据库下载图像的最佳做法是什么。截至目前整个画廊大约20MB。画廊仍在开发中,我打算在照片之间进行“加载”图形运行。但客户似乎更喜欢图像预加载。预先加载20MB以上的照片是否实用?如果是,那么最好的方法是什么?或者最好是与加载屏幕一起去?预加载20MB以上的图片。这是否值得尝试?
回答
20MB的要一次提取的实在是太多了,它会导致慢和恼人的用户体验。您应该依次ajax加载每个图像。
令人难以置信的是,你的图像有多大? 800 x 600 jpeg的质量应该在90-95%左右,约为50k。所以20 MB将是400图像。这似乎很像一个页面。我猜你的图像尺寸很大 - 考虑减少它们。如果您想拥有高分辨率,非压缩版本,请单独链接。
编辑:仅供参考,我认为一个非常大的页面(html文档+所有css,js和图像资产)将为〜1MB。一个“平均”大小的页面可能约为100k。
这会解释一些事情。他发给我的图片是800x600,但是200-700kb。我压缩了它们,并使尺寸缩小了很多。 – DavidR
为什么通过一些服务器端脚本没有“缩略”图像,缩略图预装显示&完整的图像缩略图上点击(使用某种收藏的js) 这同时保持充分porfolio预览会减少很多预压时间。
我认为更好的办法是预装接下来的照片,而你正在查看当前的
我不认为任何解决方案都是实用的 - 我建议你缩小你的图片。
20MB可能太多了,除非它是一个专门的应用程序,您可以确信1)用户将等待并且2)他们将查看大部分这些图像。否则,你正在浪费带宽。
我会看看一种策略,即将图像缓存在服务器内存中,以避免数据库流量与客户端预缓存一些图像(可添加它)结合使用。例如,如果用户在图像“A”上,也加载“B”和“C”。
是的,绝对不要这样做。请记住,有些用户将与移动连接连接,其中一些用户通过兆字节支付 - 如果您这样做,那么您已经用了20 MB的补贴,但他们可能永远看不到图像。 “
- 1. 是否值得尝试MonetDB?
- 2. 我在预加载图像尝试
- 3. Android - 如何在Imageview中加载20mb以上的图像
- 4. 预加载图片
- 5. JQuery的预加载图片
- 6. 尝试从图片数组中加载图片
- 7. 使用FTP上传图片jquery检查图片是否加载
- 8. 这些预加载的图像是否正确使用?
- 9. 加载图片预览
- 10. 预加载fancybox图片
- 11. 图片预加载动画
- 12. JavaScript图片预加载
- 13. 预载图片并添加
- 14. 图片预加载javascript
- 15. 图片预加载挑战
- 16. 预加载Photoswipe Gallery图片
- 17. javascript/ajax加载和预加载图片
- 18. 当我尝试下载图片时,我得到了403
- 19. CSS是否加载了评论图片?
- 20. 如何检查图片是否加载?
- 21. 尝试使用novoda ImageLoader的加载从URL图片
- 22. 为什么试图用jQuery预加载图片不起作用?
- 23. 是否可以在Palm Pre上预加载Sqlite DB?
- 24. 得到System.err的:“的java.net.UnknownHostException”尝试加载图像
- 25. 值得信赖的加载器试图加载沙盒资源
- 26. 预加载图片的Bug IE6-8
- 27. 用jQuery预加载图片的内容
- 28. 在iPhone上加载图片但在iPad上加载图片
- 29. Tiff格式图片是否可以叠加到Google地图上?
- 30. 获取(否?)尝试加载CSV的ASCII值。 (APEX)
”或者最好是与加载屏幕一起去吗?“?这是什么意思? –
如果你的客户想要预加载,我会说加载屏幕是一个好主意,而不是让浏览器在后台预加载时挂起。 –
@Kragen给出了一个非常好的理由,为什么你不应该这样做,但如果你的客户坚持,并且你不能改变主意,那么你应该发布免责声明,或许在一个醒目的页面上,通知所有访问者访问该网站将花费20MB的信贷。我曾经自己使用移动连接,并主动避免使用自动播放视频,音乐和缓冲图像缓存的页面和网站。 – stephenmurdoch