但是图片可以是svg的话
function saveAs(Url,filename){
var blob=new Blob([''], {type:'application/octet-stream'})
var url = webkitURL.createObjectURL(blob)
var a = document.createElementNS(xhtml,'a')
a.href = Url
a.download = filename
var e = document.createEvent('MouseEvents')
e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null)
a.dispatchEvent(e)
webkitURL.revokeObjectURL(url)
理论上,浏览器会自动缓存图片的,如果你的浏览器没有缓存,那有可能你把浏览器缓存禁用了,
还有一点是,即使是缓存了,浏览器还是会请求服务器的,但是请求的内容是,验证图片是否有修改,如果图片没有修改,那么服务器会返回状态码为300,而不是200,300意味着图片没有修改,那么浏览器就可以取本地缓存了,200是说图片下载传输完成的意思,就是说从服务器下载完成 ,
我觉得你的问题,应该是看到了浏览器请求,但是没有看状态吗的问题。
在明确一下:即使是缓存了,也会有请求的,只是请求的返回结果,是不是需要重新下载数据(图片)