我正在开发一个 Firefox 插件。它在浏览器中加载后基本上解析 HTML 文档。我能够捕获表单提交、单击链接等事件。但是,当 HTML 页面通过 AJAX 调用静默提交并部分更新时,我无法捕获它们 - 因此我如何捕获网页 AJAX 请求/附加组件中的响应?
问问题
946 次
1 回答
3
虽然您可以尝试检测 AJAX 调用,但您真正想要检测的是页面修改。您可以为此使用突变观察者(在 Firefox 14 中引入)。例如:
var observer = new MutationObserver(onDocumentChange);
// We are interested in elements being added/removed and text changes, not in
// attribute changes however.
var config = { attributes: false, childList: true,
characterData: true, subtree: true };
// Start observing the content page's document
var doc = gBrowser.contentWindow.document;
observer.observe(doc, config);
onDocumentChange
每当对内容文档进行更改时,都会调用该函数。
于 2012-08-31T08:35:16.910 回答