针对上篇关于 WebKit 内核浏览器的Image.loading 问题的补充。我的问题完美解决!

  之前是通过 new Image() 一个新对象来解决的loading事件问题,但总是有些浪费性能,而且实际测试过程中表现并不是很好,会出现浏览器兼容性问题。

而且我马上要写的解决办法的局限性也很大,必须要求图片是通过 base64 格式传输到客户端。

  base64 格式的图片尾部会出现0-3个 ‘=’ ,而 ‘=’ 之前也会出现若干A,具体为什么,可以去查百度百科 :“base64” 。

   而就是这个 ‘A’  ,根据base64 的规定,只要是4的倍数就可以了,貌似 ‘A’ 的使命也就是补齐。

  所以呢,只要在每次请求到的图片的结果中在 ‘=’ 前加随机的4的倍数的 ‘A’  就可以完美避免 WebKit 内核浏览器的缓存 不触发 image.loading 事件的bug了。

  ok!

posted @ 2013-01-12 01:48  DotNetFox  阅读(207)  评论(0编辑  收藏  举报