【发布时间】:2012-08-13 13:10:07
【问题描述】:
我有一个简单的 Rails 应用程序,它使用 canvasContext.toDataURL() 在 HTML5 站点中存储用户创建的图像。有一个 index 动作,显示缩略图列表,还有一个显示每个图像的动作,显示图像。
我这里绝对是在后台偷懒,我只是存储了原始图像的base64编码的data:image/png;base64,...字符串和一个缩略图,它也是在客户端生成的。图片使用<img src="data:"/> URI 包含在页面中。
现在,由于 v9 之前的 IE 不完全支持此功能,我将不得不实施某种解决方法,可能通过使用 data- 属性包含生成图像的 URL,然后在页面后替换源属性使用 jQuery 加载。
这提出了一个问题,使用data: URL 将相当大的图像内联到 HTML 中是否是一种好习惯...
是否有任何建议或最佳做法?图像可能高达 500 KiB,并且每个图像仅使用一次。包含图像的页面一旦创建就不会更改,因此它应该可以很好地缓存,包括图像。包含缩略图的索引页面(大约 60 KiB)使用分页,因此该页面几乎不可缓存。您可以假设 HTML 页面在生产中会被压缩或压缩。
【问题讨论】: