Chrome扩展程序会禁用js触发器

时间:2015-08-01 12:35:10

标签: javascript google-chrome javascript-events google-chrome-extension google-chrome-devtools

我做了一个小的chrome扩展,在当前页面中注入了一些代码。 这个扩展有一个奇怪的行为,每当注入代码时,页面的javascript触发器似乎都不再起作用。 你们其中一个人是否知道会发生什么?在修复代码的顶部,我真的很想知道为什么会这样。 例子:在这个页面上:http://www.acti.fr/success-story/ghd/如果扩展名注入图片,我就无法点击菜单或"继续讲课"在底部。

以下是清单和实际代码:

的manifest.json

TextBox

my-script.js:

{
    "manifest_version": 2,

        "name": "wpi",
        "description": "just an other extension",
        "version": "1.0",
        "content_scripts": [{
            "matches": ["http://*/*", "https://*/*"],
            "js": ["my-style.js"]
        }]
}

任何提示都将受到赞赏:D

谢谢!

1 个答案:

答案 0 :(得分:3)

您通过使用+=追加运算符有效地重新分配文档正文的整个 innerHTML,这会导致重新评估和重新创建整个页面,当然所有以前附加的事件处理程序都不是' t自动重新连接。

改为使用insertAdjacentHTML

document.body.insertAdjacentHTML("beforeend", wpkm_html);