按钮在自定义 chrome 扩展程序中不起作用

Button doesn't work in custom chrome extension

我尝试制作一个显示日期的 chrome 扩展,一切都很顺利,除了我尝试 运行 它的时候。我点击了我输入的按钮,但它没有显示我想要的内容。

代码:

JS

function myFunction() {
    var d = new Date();
    var weekday = new Array(7);
    weekday[0] = "Sunday";
    weekday[1] = "Monday";
    weekday[2] = "Tuesday";
    weekday[3] = "Wednesday";
    weekday[4] = "Thursday";
    weekday[5] = "Friday";
    weekday[6] = "Saturday";

    var n = weekday[d.getDay()];
    document.getElementById("checkday").innerHTML = n;
HTML

<!doctype html>
<html>

<head>
  <title>Day checker</title>
  <script src="popup.js"></script>
</head>

<body>
  <h1>Click to show day</h1>
  <button id="checkday">Check!</button>
</body>

</html>

JSON

{
    "manifest_version": 2,

    "name": "What day is it",
    "description": "This extension will find the date",
    "version": "1.0",

    "browser_action": {
        "default_icon": "icon.png",
        "default_popup": "popup.html"
    },
    "permissions": [
        "activeTab"
    ]
}

图片(19x19) http://i.stack.imgur.com/FM9wt.png

必须在加载 DOM 内容后动态链接该操作。 出于安全原因,静态链接操作(例如 onClick 属性)不适用于 Chrome 扩展。

在你的 js 文件 (popup.js) 中,添加这个

document.addEventListener('DOMContentLoaded', function(){
  document.querySelector('#checkday').addEventListener('click', myFunction);
  // anything else you want to initialize on the page
});

这应该可以正常工作。