2013-02-10 26 views
8

クロム拡張機能をテストしています。私はManifest v2でpopup.htmlにjavascriptを持つことはできないことを理解しています。だから、javascriptを別のファイルpopup.jsに移動しました。非常にシンプルなChrome拡張機能はボタンonclickイベントにaddEventListenerを実装していません

私は、ポップアップでハローワールドアラートを呼び出す単純なボタンを作ろうとしていますが、それは単に機能しません。

さらに、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" 
    } 
} 

任意のアイデア?

答えて

12

だけwindow.onload削除:

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

document.addEventListener('DOMContentLoaded', function() { 
    document.getElementById('alertButton').addEventListener('click', myAlert); 
}); 
+1

感謝を!また、イベントリスナーのイベントとして「クリック」の代わりに「onclick」を使用していたことに気付きました。ピー! – LittleBobbyTables

+0

Thnx .....私はまた、これを2時間苦労していました。 window.onload ... Thnxをもう一度削除する予定はありませんでした:) –

+0

は 'options.js'では動作しません – user924

関連する問題