最近我在使用IE时遇到了一个问题。我有一个函数
function() {
ShowProgress();
DoSomeWork();
HideProgress();
}
其中ShowProgress和HideProgress只是使用jQuery的css()方法来操作'display' CSS样式。
在Firefox中一切正常,同时我将display属性更改为block时,进度条出现了。但在IE中不行。在IE中应用样式后,一旦我离开函数,就意味着它从未显示过,因为在函数结束时我只是隐藏它。(如果我删除HideProgress行,则进度条会在执行完函数后立即出现(更准确地说,在调用函数结束时立即出现 - 因此在IE中没有其他操作)。)
有人遇到过这种情况吗?有没有办法让IE立即应用样式?
我已经准备好一个解决方案,但需要花费一些时间来实现它。我的DoSomeWork()方法正在进行一些AJAX调用,而这些调用现在是同步的。我认为将它们变成异步的会解决问题,但我必须对代码进行重新设计,因此仅找到一个立即应用样式的解决方案会更简单。
谢谢rezna