2013-03-16 35 views
1

我是这个主题的新人,所以我对此问题表示歉意:) 我需要创建一个页面,该页面必须显示一个帖子中上传的所有图片。当用户点击下一个按钮时,它必须加载下一张图片,替换第一张图片。下载从ajax调用的图像时,浏览器如何操作?

< [ image1 ] > 
    Title 
    Description 
    other content 

- >用户点击下一个

< [ image2 ] > 
    Title 
    Description 
    other content 

然而,为了加快图像显示负荷,以下两个图像需要在隐藏面板要被下载,因此图像将被缓存时用户点击下一步并加载下一批图像。

如果我使用ajax来完成这项任务,浏览器会使用下载的图片还是ajax会再次下载它们?

有没有办法让这个过程更优化?

非常感谢!

+0

我认为你有正确的想法。当用户点击下一个时,只需让浏览器使用javascript显示隐藏面板并发出ajax调用以检索以下图像并将其添加到隐藏面板。这个SO问题可能有助于[链接](http://stackoverflow.com/questions/7074685/how-to-add-image-to-show-hide-div-javascript) – ssn771 2013-03-16 22:42:55

回答

0

您可以使用ajax将下一张图片的数据下载到字符串,并将其转换为base64字符串,并通过将图片的src属性更改为“数据”将其嵌入到html中(当单击下一个按钮时,使用javascript) :图像/ PNG; BASE64,(base64stringhere)”与图像的所下载的base64串置换(base64stringhere)

REF:http://www.techerator.com/2011/12/how-to-embed-images-directly-into-your-html/

REF:How can you encode a string to Base64 in JavaScript?

注意:大多数浏览器高速缓存的图像,所以它如果用户正在查看图像,会浪费相当多的带宽已经下载了。

+0

这种方式下载图像比使用Ajax ? – 2013-03-16 22:52:28

+0

这使用ajax来下载它们,它只是在后台下载下一个图像,并在用户点击下一个按钮 – 2013-03-16 22:58:45

+0

后立即更改它们,但如果我创建了一个Ajax函数来下载图像,浏览器如果图像在缓存中,忽略下载功能? – 2013-03-16 23:14:21

相关问题