我使用了ajax更新进度控件,显示回发发生时的动画gif。
问题:它会显示一段时间但会停止引用(或者更确切地说,停止播放/转动)。可能是同样的原因是什么?
请指教!谢谢!
答案 0 :(得分:9)
.gif的动画将在使用Internet Explorer的PostBack上停止。这个问题是Internet Explorer固有的。显然这个问题一直追溯到IE 6(虽然我只是在IE8中确认了它。)
围绕它有一点点破解,那就是用setTimeout来更新它的来源
function UpdateImg(ctrl) {
var img = document.getElementById(ctrl);
img.src = img.src;
}
setTimeout(function() { UpdateImg('image1'); }, 50);
您还可以使用jQuery为图形设置动画。这适用于IE,但现在我注意到Chrome在PostBack上的动画一直无法正常工作。总有一些不存在的东西? ...... :(
答案 1 :(得分:1)
某些浏览器会在处理JavaScript时暂停呈现当前显示的元素。所以我经常注意到的行为是:
根据浏览器计算页面实际更改所花费的时间(在较旧的浏览器上更长,尤其是IE6,IE7非常慢),这可能需要相当长的时间。此外,此阶段JavaScript中的错误也可能导致进度面板“永远”显示。