很多问题 咱都习惯性的怪罪于浏览器
比如修改或是替换了一个已存在图片,你不逼着浏览器去重新请求 它就偷懒的只从本地取自己存了的图片 而不会自觉的重新请求
这样就会使你辛苦的修改从现象上看完全不生效
项目中 PM像是发现了惊天大bug似的跑过来质问我 这个icon怎么没有了 !!!???
我很平静的说 Ctrl+F5
这在我看来是再平常不过的东西 在这个刚来 热情澎湃的PM看来是完全不能接受的
你不能要求每个用户都 Ctrl+F5 吧 何况很多人根本不知道 Ctrl+F5 。。。。。
确实。。。。。。。
一般 在这个时候 我们又会把万恶的浏览器们拉出来一顿痛批。。。。。。
但是 我想如果该死的浏览器不给你做图片缓存 你一定更想把它们杀了
所以我们应该忘了对浏览器的仇恨 多想想它们的好 这样我们的工作 生活 会更协调:)
言归正传 说下对付这个的几个方案 基本都不完美
如果每次都想请求新的图片 则在图片后面加个?temp=Math.random() 即可(就是:imgurl + "?temp=" + Math.random())
如果只是更新一次 就直接imgurl + "?temp=1" css直接写
但是这样时间长了之后 你的样式那叫一个乱呀
不过比起 每次都取个新名字、 维护多个图片 还是好很多的
另一个我们项目里一直用的方法是
有新图片需求时 即使是个小icon也新建张图片
在一定时间后 统一的对这些小图片进行整理 合并
缺点 显而易见 那叫一个麻烦啊
还有什么办法 能告诉浏览器我的这个图片已经更新了 需要重新请求一下 又只用维护一个图片文件和唯一的url呢