gif图片播放完毕后,再次显示不会播放。查了一些资料是cached gif cannot replay.
解决方法:
1)src=**.gif?c=随机数 这样其实是取消了浏览器的缓存,每次都会重新加载gif,是一个最简单的解决办法,不过牺牲了性能和流量。
2)高级解决方法。https://www.ajostrow.me/articles/cache-animated-gifs 见这个链接
思路大概说一下,把gif异步加载进来,blob格式存储到内存,每次显示用URL.createObjectUrl(blob)创建一个新的链接,这样浏览器就不会缓存,因此每次会重新播放。但是我们自己实现了缓存,从而不用每次加载。