2016-10-07 8 views
0

問題: Google Chrome拡張機能でjqueryを使用しようとしています。それは動作していないようです。私はそれを私のマニフェストをjqueryファイルのローカルコピーを参照して追加しようとしました。また、私はStackOverflowから見つけた両方のソリューションをホストしているCDNへのリモートアクセスを許可するために異なるディレクティブを追加しようとしました。jqueryを使用しているときにGoogle Chrome拡張機能ポップアップが読み込まれない

症状: 私は右クリックして、「ポップアップを点検し、」選択した場合、私はjqueryのからのすべての機能を持つポップアップ負荷を、それは何もしないpopup.html起動すると仮定され、右上のアクションボタンをクリックしますが、含まれています。何か案は?私は以下に私のマニフェストを含めました。

可能な手がかり:タイミング遅延を追加し、実際にポップアップがレンダリングさせるとjQueryコード、基本的に静かにクラッシュし、独自に早まってまもなくポップアップの終了後、次に実行します。

{ 
    "manifest_version": 2, 

    "name": "My extension", 
    "description": "A test extension.", 
    "version": "1.0", 
    "icons":{"128": "icon_512.png"}, 
    "background": { 
    "scripts": ["jquery-3.1.1.min.js","events.js"], 
    "persistent": false 
    }, 
     "browser_action": { 
    "default_icon": "icon.png", 
    "default_popup": "popup.html", 
    "default_title": "Click here!" 
    } 
} 

のjQuery

私は、次のしているpopup.js内側:

$(document).ready(function(){ 
    alert("Random output!"); 
}); 

しかし、私はこれを行う場合、それは一時的に動作します:

setTimeout(function(){ 
    // Code here 
$(document).ready(function(){ 
    alert("Jquery works for a little bit!!!"); 
}); 

},1000); 

popup.html

<!doctype html> 
<html> 
    <head> 
    <title>Test</title> 
    <style type="text/css"> 
     #content { 
      background-color: yellow; 
      width: 500px; 
      height: 500px; 
     } 
    </style> 
    </head> 
    <body> 
    <div id="content"> 
     <h1>Test</h1> 
     <button id="checkPage">Start</button> 
    </div> 

    <script src="jquery.min.js"></script> 
    <script src="popup.js"></script> 
    </body> 
</html> 
+0

ポップアップと背景ページは異なるドキュメントです。 popup.htmlでjQueryをロードしますか?はいの場合は、それを示してください。 – wOxxOm

+0

@wOxxOmそれは私のマニフェストファイルと私の記述によって暗示されるべきです。表示されるjqueryはpopup.jsです。 popup.htmlファイルも追加します。 –

+1

ここであなたのコードを試しました。バージョン54.0.2840.50 beta-m(64ビット)で正しく動作します – Granga

答えて

0

グランガが上記のように、この問題はバージョンの互換性の問題が原因であると指摘しました。これまでのところ、Chromeの最新バージョンでjQueryの最新バージョンがうまく動作しているようです。将来このような問題が発生した場合は、jQueryまたはChromeをアップグレードしてみてください。

関連する問題