17

だから私はクロム拡張機能の作成をテストしています。マニフェスト 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);
    }); 
}

マニフェスト.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"
  }
}

何か案は?

4

1 に答える 1

19

削除するだけwindow.onloadです:

function myAlert(){
    alert('hello world');
}

document.addEventListener('DOMContentLoaded', function () {
    document.getElementById('alertButton').addEventListener('click', myAlert);
});
于 2013-02-10T19:07:22.707 に答える