因此,我正在测试创建Chrome扩展程序。我理解,使用Manifest v2,您无法在popup.html中使用javascript。所以,我已经将javascript移动到一个单独的文件popup.js。
我试图在弹出窗口中设置一个简单的按钮来调用hello world警报,但它根本不起作用。
此外,Chrome的Inspect Element调试器不会显示任何错误。
popup.html
<html>
<head>
<title>Test</title>
<script language='javascript' src='popup.js'></script>
</head>
<body>
<form name='testForm'>
<input type='button' id='alertButton' value='click me'>
</form>
</body>
</html>
popup.js
function myAlert(){
alert('hello world')
}
window.onload = function(){
document.addEventListener('DOMContentLoaded', function () {
document.getElementById('alertButton').addEventListener('onclick', myAlert);
});
}
的manifest.json
{
"manifest_version": 2,
"name": "Test",
"description": "Test Extension",
"version": "1.0",
"icons": {
"48": "icon.png"
},
"permissions": [
"http://*/*",
"https://*/*"
],
"browser_action": {
"default_title": "This is a test",
"default_icon": "icon.png",
"default_popup": "popup.html"
}
}
有什么想法吗?
答案 0 :(得分:16)
只需删除window.onload
:
function myAlert(){
alert('hello world');
}
document.addEventListener('DOMContentLoaded', function () {
document.getElementById('alertButton').addEventListener('click', myAlert);
});