Javascript Chrome扩展名:TypeError:无法读取属性';增补列表器';空的

Javascript Chrome扩展名:TypeError:无法读取属性';增补列表器';空的,javascript,html,dom,google-chrome-extension,Javascript,Html,Dom,Google Chrome Extension,我目前正在玩Chrome扩展,到目前为止玩得很开心,但现在我遇到了一些问题,在过去的几个小时里我试图解决它,但我仍然被卡住了。不知何故,我似乎无法在我的HTML文件和其中指定的按钮以及执行实际操作的相应js脚本之间建立连接 舱单: { "manifest_version": 2, "name": "Test Extension", "description": "Some text&

我目前正在玩Chrome扩展,到目前为止玩得很开心,但现在我遇到了一些问题,在过去的几个小时里我试图解决它,但我仍然被卡住了。不知何故,我似乎无法在我的HTML文件和其中指定的按钮以及执行实际操作的相应js脚本之间建立连接

舱单:

{
    "manifest_version": 2,
    "name": "Test Extension",
    "description": "Some text",
    "version": "1.0.0",
    "browser_action":
    {
        "default_icon": "icon.png",
        "default_popup": "popup.html"
    },
    "permissions": [
        "activeTab",
        "tabs"
    ],
    "background":
    {
        "scripts": ["popup.js"],
        "persistent": false
    }
}
popup.html

<!doctype html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Some title</title>
    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans" type="text/css">
</head>

<body>
    <div class="modal-header">
        <h1 class="logo">
            <img class="logo-icon" src="modal-image.png" />Modal Title
            <span class="version">(1.0.0)</span>
        </h1>
    </div>
    <div class="modal-content">
        <p>Description in modal</p>
    </div>
    <button id="button1" >Check</button>
    <script src="popup.js" charset="utf-8"></script>
</body>

</html>
这是我在控制台中看到的错误:

Uncaught TypeError: Cannot read property 'addEventListener' of null

你知道吗?注意:我根本不是一个程序员,只是发现了chrome扩展和javascript:)

1)从manifest.json中删除
background
部分。后台脚本在隐藏的后台页中运行。它就像一个有自己生命周期的隐藏选项卡:在加载、安装、重新启用扩展时,或者在后台脚本声明为“persistent”:false时,在恢复时运行它。你不需要它。2) 删除chrome.browserAction.onClicked-当使用默认的\u弹出窗口时,它将不起作用。你不需要它,因为浏览器的动作图标已经被点击了,这就是弹出窗口显示的原因。每次点击图标时,弹出窗口都会重新运行。太棒了,非常感谢!!这很有效。一定与你的第二点有关,因为我已经根据我在其他聊天中读到的内容删除了背景。1)从manifest.json中删除
background
部分。后台脚本在隐藏的后台页中运行。它就像一个有自己生命周期的隐藏选项卡:在加载、安装、重新启用扩展时,或者在后台脚本声明为“persistent”:false时,在恢复时运行它。你不需要它。2) 删除chrome.browserAction.onClicked-当使用默认的\u弹出窗口时,它将不起作用。你不需要它,因为浏览器的动作图标已经被点击了,这就是弹出窗口显示的原因。每次点击图标时,弹出窗口都会重新运行。太棒了,非常感谢!!这很有效。一定与你的第二点有关,因为我已经根据我在其他聊天中读到的内容删除了背景。
Uncaught TypeError: Cannot read property 'addEventListener' of null