我展示了一个动画 GIF,它在我的 AJAX 请求正在进行时运行,并在我的脚本处理完响应后停止。
虽然这可行,但我注意到,当我的脚本(其中包含一些相当大量的 DOM 更新)中处理来自请求的响应时,动画会冻结。
我的研究使我相信这是因为 GIF 的动画发生在运行 javascript 的同一线程上 - 浏览器是真正的单线程。这是对当前所有主流浏览器(例如 Chrome、Firefox、Safari、IE)的正确解释吗?
其次,为什么要这样做?浏览器真的不可能将一个线程专用于 GIF 动画,以便在执行一段 javascript 时它们不会冻结吗?
更新
这是一个有趣的页面。它谈到了使用纯 CSS3 动画。他们仍然在 Firefox 中冻结 - 也许很快 FF 会解决这个问题。看起来我应该考虑将 CSS 用于动画而不是使用 GIF。