我正在尝试创建Chrome扩展程序,但由于DOMContentLoaded无法启动,因此出现了问题。
注意:我的代码来自其他网站。
基本上,我已经创建了一个带有按钮的HTML
文件:
<head>
<title>GTmetrix Analyzer</title>
<script src="popup.js"></script>
</head>
<body>
<h1>GTmetrix Analyzer</h1>
<button id="checkPage">Check this page
now!</button>
</body>
这是 JS文件(popup.js):
document.addEventListener
('DOMContentLoaded',
function() {
console.log("f")
var checkPageButton =
document.getElementById('checkPage');
checkPageButton.addEventListener('click',
function() {
chrome.tabs.getSelected(null,
function(tab) {
d = document;
var f = d.createElement('form');
f.action = 'http://gtmetrix.com/analyze.html?bm';
f.method = 'post';
var i = d.createElement('input');
i.type = 'hidden';
i.name = 'url';
i.value = tab.url;
f.appendChild(i);
d.body.appendChild(f);
f.submit();
});
}, false);
}, false);
我添加了console.log事件,以检查该事件是否已执行,因此这就是我验证其无效的方式。
我还添加了run_at": "document_start
但是后来我得到了
未捕获的TypeError:无法读取null的属性'addEventListener'
对于“ click”事件,因此我猜想该事件是在创建按钮之前触发的。
请帮助!