检查Google Chrome扩展程序中的DOM元素

时间:2011-07-12 14:43:25

标签: javascript dom google-chrome google-chrome-extension

我正在尝试制作简单的Google Chrome扩展程序 - 例如在页面上查找特定元素并显示警告。

我的问题是特定页面的加载速度相对较慢(后面还有一些AJAX)。

如果只加载了所有页面,我怎样才能进行检查?

我在清单文件中尝试了"run_at" : "document_idle",但没有成功。它会在整个页面加载之前显示消息。

我正在考虑检查整个DOM元素的每一秒(或某些东西),但这是一个可行的解决方案吗?我认为它会减慢页面的速度......

感谢。

2 个答案:

答案 0 :(得分:1)

您是否尝试将代码放在“content_script.js”中的window.onload事件中?

window.onload = function() {
   // your code
};

答案 1 :(得分:1)

如果单击“查看源”时页面上不存在该元素,那么捕获它的一种方法是监听DOMSubtreeModified事件,每次修改DOM时都会触发该事件:

document.addEventListener("DOMSubtreeModified", function(event){
        if(document.getElementById("my_element")) {
                //element is added
        }
});