我想重载JavaScript中的XMLHttpRequest。*方法,以便网页能够判断出Ajax请求是否发生,而不使用任何侵入式回调。现在,使用最JS框架的时候是这样的工作比较细的:搞清楚什么时候XMLHttpRequest请求没有回调
XMLHttpRequest.prototype.getResponseHeader = function() {
alert('O hai, looks like you made an AJAX request.');
}
但是,有两个卡口:
- getResponseHeader不能用作getResponseHeader了。
- 它在简单的AJAX示例中不起作用。即
xmlhttp.open("GET","simple.html",false);
有什么办法JS可以镜像XMLHttpRequest.open()
或任何我可以链接到它的方式。我试过一百万个范例(工厂,克隆,包装 - 大多数导致无限递归),似乎没有任何工作。也许这是不可能的。有任何想法吗?
temp作为参数应用应该是'this'来维持原始调用的范围 – 2010-02-12 22:13:43
在函数范围内创建它也会更好,因此'temp'变量不在全局范围 – AnthonyWJones 2010-02-12 22:18:38
感谢加比,我编辑过来反映这一点。和安东尼:我总是尽量减少全局,但因为我只需要2行代码来说明我不想让事情复杂化 – Bob 2010-02-12 22:35:29