2016-04-27 11 views
0

クロム拡張機能がありますが、JavaScriptが正しく読み込まれていません。私はファイルをリンクしようとしましたが、悲惨に失敗しました。ボタンをクリックしたときにボタンをどのように機能させることができるかについてのアイデアはありますか?クロム拡張で正しくJavaScriptをリンクする

{ 
"manifest_version": 2, 

"name": "Getting started example", 
"description": "This extension shows a Google Image search result for the current page", 
"version": "1.0", 

"browser_action": { 
"default_icon": "icon.png", 
"default_popup": "popup.html" 
}, 
"permissions": [ 
"activeTab", 
"https://ajax.googleapis.com/" 
] 

    } 

:<スクリプト>タグでは動作しないとボタンが何もしないが、初期のJavaScriptが実行されない...ここに私のコード

manifest.jsonを(私はそれが正常に動作すると思います)ですpopup.html(JavaScriptで関数がこれにリンクしない):

<body style = "margin:10px"> 

<!-- Latest compiled and minified CSS --> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous"> 

<!-- Optional theme --> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" integrity="sha384-fLW2N01lMqjakBkx3l/M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV+0En5r" crossorigin="anonymous"> 

<!-- Latest compiled and minified JavaScript --> 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script> 
<script src="popup.js"></script> 
<style> 
//Fancy styles 
large{font-size:30px} 
span{} 
.input-group{width:400px} 
</style> 
<!-- title --> 
<large> 
SpeedyURLs 
</large> 
<hr/> 
<!-- Code that won't link with JavaScript --> 
<div id = "stuff"> 

</div> 
<div class = "input-group" id = "content"><input class = "form-control" placeholder = "Enter a URL here. Ex: https://www.google.com"/><span class="input-group-addon btn btn-default" style = "font-size:20px;width:50px;color:black" id="basic-addon1" onclick = "addNew()">+  </span></div> 
<button onclick = 'document.write("HELLO")'>YAS</button> 
</body> 

popup.js(リンクしない機能):

function open(url){ 
window.open(url)} 
function addNew(){ 
document.getElementById("stuff").innerHTML = document.getElementById("stuff").innerHTML+'<div class = "input-group" id = "content"><input class = "form-control" placeholder = "Enter a URL here. Ex: https://www.google.com"/><span style = "font-size:20px;width:50px;color:black" class="input-group-addon btn btn-danger" id="basic-addon1">x</span></div>'} 

icon.png(既定のイメージにはコードはありません。正常に動作します)

したがって、JSの関数はHTMLにリンクしません。何か案は?

+0

可能な複製(あなたのボタンIDがbuttonId0と言います) http://stackoverflow.com/questions/13591983/onclick-within-chrome-extension-not-working) –

答えて

1

By default、インラインJavaScriptは実行されません。

あなたは可能性があり

  1. デフォルトポリシーをリラックス。詳細はInline Scriptを参照してください。

  2. popup.htmlonclickを削除し、あなたのpopup.jsにそのロジックを移動すると、コードは次のようになります([クローム拡張機能していない内のonClick]の

    document.getElementById("buttonId0").addEventListener("click", function() { 
        // Your logic here 
    }, false); 
    
+0

http://stackoverflow.com/q/13591983/2213940 –

関連する問題