Facebook的Chrome扩展程序仅在刷新时加载

时间:2015-03-03 19:38:02

标签: javascript jquery facebook google-chrome

我写了一篇应该说“嗨”的扩展名。' 用户点击页面的每个时间,这就是代码:

的manifest.json

{
"name" : "first-ext",
"version" : "1.0",
"manifest_version" : 2,

"permissions":[
    "tabs"
],
"content_scripts":
[
    {
        "matches" : ["https://www.facebook.com/*"],
        "js": ["jquery.js", "f.js"],
        "css": ["style.css"]
    }
]

}

f.js

$(document).ready(function(){ 
    alert("Hi."); 
});

我正在使用这些文件,如果我刷新每个页面,一切正常如果我通过点击每个链接更改页面,则脚本不会在新页面上运行。

例如如果打开Facebook主页,扩展程序会说"嗨。&#34 ;; 如果现在我刷新它再次工作。 如果我点击朋友时间线的链接,则浏览器会打开页面,但扩展程序不起作用。如果脚本没有执行就好了。 如果我刷新然后再次工作。

这很不寻常,因为我在其他网站上尝试了相同的扩展程序,如果我刷新并且通过点击某个链接更改页面,它可以正常工作。

抱歉我的英文。

1 个答案:

答案 0 :(得分:0)

您应该使用MutationObserver。它将允许您对DOM中的更改做出反应。与TreeWalker一起使用时,它特别强大。

有关如何使用它的详细信息,请参阅此sample extension