有没有办法监听javascript函数退出?一个函数完成后可以设置的触发器?Javascript:在函数退出时触发动作
我试图使用用户界面模糊处理技术(BlockUI),而AJAX对象正在从数据库中检索数据,但该函数并不一定最后执行,即使您将它放在函数调用的末尾。
例子:
function doStuff() {
blockUI();
ajaxCall();
unblockUI();
};
有没有办法为doStuff监听AjaxCall的完成,在发射前unBlockUI?实际上,它按线性处理函数,按顺序调用每个对象,然后生成一个单独的线程以完成每个对象。所以,尽管我的AJAX调用可能需要10-15秒才能完成,但由于函数的线性执行,我仅仅阻止了用户一秒钟。
还有一些不太好用的方法......只有当AJAX函数设置的返回值设置为true时,才会结束循环,或者具有某种特性。但这似乎不必要的复杂和低效率。
这种方法的缺点是它会锁定所有JavaScript活动,直到XHR完成。 – 2008-09-25 17:54:42