是否可以从下到上加载图像?
假设我有一个很长很长的图片需要 60秒加载。内容可从底部到顶部读取,我可以做任何事情让浏览器从从底部到顶部加载我的图片,以便用户可以在图像加载时读取它?
谢谢,
这是一个与此问题相关的有趣的“ AAAAAND ITS GONE ”模因。
感谢所有回答我问题的人,以下是我总结的一些解决方案:
翻转图片,然后使用-webkit-transform: scaleY(-1);
使用BMP
格式,这样浏览器会将图片“向上”加载,但BMP
不是保存大图片的好文件类型,但它仍然是一个很好的尝试,因为你不需要在服务器端翻转图像。
(请停用缓存以查看演示中的加载)
答案 0 :(得分:2)
事实上,你可以。只需使用BMP
格式。此格式从底部存储。
您可以找到向上加载here的图片示例。 (您必须单击“位图和.rle图像”按钮才能显示样本。)
来自fileformat.info的位图文件格式:
[关于文件头结构]如果Height是正数,则图像是一个“自下而上”的位图,其原点位于左下角。如果“高度”为负数,则图像为“自上而下”位图,其原点位于左上角。
您可以在topic in SO或this one找到更多信息。
答案 1 :(得分:1)
我认为Http这样的技术像Spdy(它是替代品)可以让这些东西变得可能......
甚至像IE / Safari这样的浏览器都不支持它, 因为这是一个谷歌技术
看看这个演示: https://www.youtube.com/watch?v=zN5MYf8FtN0&feature=youtube_gdata_player 大约38分钟
是的,你还需要将你的图像分成多个部分...就像在另一个评论中提到的那样
答案 2 :(得分:1)
您可以将其切成服务器中的切片并单独加载。这可能是实现这一目标的唯一方法,因为您对内容的发送方式并没有那么多的控制。
或者,只需旋转服务器中的图像,正常加载,然后使用transform: rotate(-180deg)
显示。
答案 3 :(得分:1)
<强> LIVE DEMO 强>
<img src="perfect.jpg" style="background-image:url(imperfect.jpg);">
巨大的图像将通过魔法缓慢显示在占位符上!
像img
这样background-size
的一些CSS也可能派上用场。你明白了。
答案 4 :(得分:1)
如果你的目标是在加载图片时让用户可以阅读你的内容,你可以使用jquery lazy load image插件,这里是一个演示http://www.appelsiini.net/projects/lazyload/enabled.html
你仍然可以使用尺寸小于bmp的jpeg图像
答案 5 :(得分:0)
这是一种与非常见浏览器向后兼容的替代方法。另一面(aha)增加了页面尺寸和准备工作。您可以根据自己的特定需求确定收益是否超过利弊。
步骤1:在图像编辑器中打开图像,垂直翻转图像,然后将其作为新文件上传到您的网站上。
第2步:代码!详情如下......
JSFiddle:http://jsfiddle.net/5uLZD/1/
Libraries:Modernizer,JQuery
HTML:
<!--Source below is the 'unflipped' image-->
<img src="http://i62.tinypic.com/wratsj.jpg" id="bottomtotop">
CSS:
.flipped {
transform: rotate(-180deg);
}
JS:
if (Modernizr.csstransforms) {
// Source below is the 'flipped' image.
$("#bottomtotop").attr('src', 'http://i60.tinypic.com/2qajqqr.jpg').addClass('flipped');
}
您可以通过简化Javascript并远离框架来缓解大小问题(即,使用“document.getElementById('bottomtotop')”代替“$('bottomtotop')”等等,但是这需要花费大量的时间和精力。