等到gobalEval完成

时间:2015-05-29 11:05:42

标签: javascript jquery

我需要在完成以下操作后执行回调:

jQuery.globalEval(myUnknownContent);

但是,myUnknownContent可能会有一些Ajax调用。到目前为止,我使用的是超时100毫秒,但这不是一个优雅可靠的解决方案。

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

您可以使用ajaxSendajaxStop

var onCompletion = function(){
    // put here the stuff you want done after all unknown content
}
var ajaxSent = false;
jQuery(document).ajaxSend(function(){ ajaxSent = true });
jQuery.globalEval(myUnknownContent);
if (ajaxSent) {
    jQuery(document).ajaxStop(onCompletion);
} else {
    onCompletion(); // use setTimeout(onCompletion,0) if you want it asynchronous
}