我正在使用以下代码来捕获从我的应用程序进行的所有AJAX调用,以便显示忙碌的调整程序直到调用完成。当请求很好地分开时,它运行良好。但是,当请求快速连续进行时,某些AJAX调用不会被注册,或者onCreate和onComplete操作同时被启动,并且更多时候,繁忙的微调器继续出现在屏幕上,所有的电话都成功完成后。在通话结束时是否可以执行任何检查,检查元素是否可见,我可以隐藏它。Effect.toggle和AJAX调用
document.observe("dom:loaded", function() {
$('loading').hide();
Ajax.Responders.register({
//When an Ajax call is made.
onCreate: function() {
new Effect.toggle('loading', 'appear');
new Effect.Opacity('display-area', { from: 1.0, to: 0.3, duration: 0.7 });
},
onComplete: function() {
new Effect.toggle('loading', 'appear');
new Effect.Opacity('display-area', { from: 0.3, to: 1, duration: 0.7 });
}
});
});
谢谢!
谢谢!奇迹般有效。 bmoeskau和Josh提出的答案都表达了同样的想法! – Gunner4Life 2010-05-19 19:05:37
这是因为伟大的思想者都相同;-) – Josh 2010-05-19 19:17:11