1

我想在网页内容更新时执行 chrome 脚本(例如 Facebook)

那么我应该使用什么方法呢?

4

3 回答 3

0

You can use

$("body").bind("DOMSubtreeModified", function() {
    alert("something changed");
});

Note: DOMSubtreeModified is deprecated

于 2012-06-11T23:42:22.097 回答
0

如前所述sachleen,您可以使用DOMSubtreeModified侦听器

document.addEventListener("DOMSubtreeModified", methodToRun);

请注意,Mutation Events这些性能猪实际上并不能很好地驯服(它们过于频繁地触发并大大降低了页面速度)。因此,它们已在一年多前被弃用,仅在真正需要时才应使用。然而,他们工作。

如果你想要这个 Chrome 扩展,你可以使用Mutation ObserversDOM Level 4 中的新的和闪亮的(点击那里的链接,他们解释了很多!)。在DOMSubtreeModified触发一千次的情况下,MutationObserver只触发一次,所有修改都包含在内且可访问。

适用于(截至 2012/06 年):

  • Chrome 18+(前缀,window.WebKitMutationObserver
  • Firefox 14+(无前缀)
  • WebKit 夜班
于 2012-06-25T23:23:21.493 回答
0

你应该用 chrome.* API 试试:

chrome.tabs.onUpdated.addListener(
    function(integer tabId, object changeInfo, Tab tab) {
     //your code
});

有关文档,请参见此处:

http://code.google.com/chrome/extensions/tabs.html#event-onUpdated

它应该适用于(AJAX)请求等更新......

于 2012-06-12T09:22:28.953 回答