如何在javascript中捕获所有ajax请求?

时间:2010-05-02 20:21:27

标签: javascript ajax greasemonkey

是否有可能为任何ajax请求返回时自动调用的ajax请求设置全局事件处理程序?

我对此感兴趣,因为我正在为ajax网站制作一个greasemonkey脚本。在以前的脚本中,我每隔几秒就运行一次main函数,或者覆盖网站javascript的部分内容,这两件事都很混乱。

2 个答案:

答案 0 :(得分:2)

不使用常规XMLHttpRequest。像jQuery这样的库为此提供了包装器(例如ajaxComplete)。它们只会触发也使用包装器的ajax请求(例如jQuery.ajax)。

答案 1 :(得分:0)

使用jQuery我这样做。

$(document).ready(function() {
    $("#contentLoading").hide();

    $("#contentLoading").ajaxSend(function(r,s){
        $(this).show();
        $("#ready").hide();
    });

    $("#contentLoading").ajaxStop(function(r,s){
        $(this).hide();
        $("#ready").show();
    });

不是隐藏和展示你可能拥有的东西,而是运行一个通用函数。