MCM*_*MCM 9 javascript ajax jquery xmlhttprequest
我正在开发一个项目,它有几个我无法改变的脚本.这些脚本通过AJAX更新页面.更新完成后,我需要运行一些代码.
任何XMLHttpRequest完成时是否会触发任何事件?(或任何XMLHttpRequest状态更改?).
不幸的是,我无法访问用于发出请求的特定XMLHttpRequest对象.
谢谢,
aps*_*ers 14
如果没有jQuery,您可以挂钩该open方法,以便readystatechange在open编辑XHR对象时为每个XHR对象的事件附加一个侦听器.确保在发生任何Ajax之前运行以下代码:
// save the real open
var oldOpen = XMLHttpRequest.prototype.open;
function onStateChange(event) {
// fires on every readystatechange ever
// use `this` to determine which XHR object fired the change event
}
XMLHttpRequest.prototype.open = function() {
// when an XHR object is opened, add a listener for its readystatechange events
this.addEventListener("readystatechange", onStateChange)
// run the real `open`
oldOpen.apply(this, arguments);
}
Run Code Online (Sandbox Code Playgroud)
或者,如果您只关心成功的load事件,您可以监听该事件而不是readystatechange.
| 归档时间: |
|
| 查看次数: |
9308 次 |
| 最近记录: |