Chrome拡張機能でポップアップからバックグラウンドにデータが渡されない

Nir tzezana

私はそれのコツをつかんだと思いますが、それは単に機能していません...そして私は理由を理解することができません。

マニフェスト:

{
  "name": "Dummy Extension",
  "description": "Dummy Extension Description",
  "version": "2.0",
  "permissions": [
    "activeTab"
  ],
  "background": {
    "scripts": ["background.js"],
    "persistent": false
  },
  "browser_action": {
    "default_title": "Dummy Extension",
     "default_popup": "popup.html"
  },
  "manifest_version": 2,
  "content_scripts": [ {
    "js": [ "jquery.min.js", "background.js" ],
    "matches": [ "http://*/*", "https://*/*"]
  }]
}

バックグラウンド:

chrome.extension.onMessage.addListener( function(request,sender,sendResponse)
{
    if( request.greeting === "GetURL" )
    {
        var tabURL = "Not set yet";
        chrome.tabs.query({active:true},function(tabs){
            if(tabs.length === 0) {
                sendResponse({});
                return;
            }
            tabURL = tabs[0].url;
            sendResponse( {navURL:tabURL} );
        });        
    }
}

Popup.html

<!DOCTYPE html>
<head>
<script src='popup.js'></script>
<script src='jquery.min.js'></script>
</head>
<body>
    Hello World!
        <br />
    <input id="tabURL" type="text" />
        <br />
    <input value="SEND!" type="button" id="send" />
</body>
</html>

そしてpopup.js

function getURL() {
    chrome.extension.sendMessage({greeting: "GetURL"},
        function (response) {
            tabURL = response.navURL;
            $("#tabURL").val(tabURL);
        });
}

$("#send").click(getURL());

何が悪いのか理解できません。jqueryが定義されています。コンソールエラーは発生しません。どんな助けでも素晴らしいでしょう!

氏族長

$("#send").click(getURL());DOMが完全に構築されて失敗する前に実行されます。また、参照をgetURL実行するのではなく、に渡す必要があります

修正するには:

$(document).ready(function(){
  $("#send").click(getURL);
});

ちなみに、あなたは間違ったコンソールでエラーを探しているかもしれません。ポップアップについては、このデバッグチュートリアル参照してください

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Chrome拡張機能:ポップアップからバックグラウンドでデータ属性を保存する

ページが読み込まれるたびに、バックグラウンドからChrome拡張機能のポップアップにメッセージを送信するにはどうすればよいですか?

Chrome拡張機能のポップアップウィンドウでアラートが機能しない

Chrome拡張機能のポップアップがセカンドモニターに表示されない

Chome拡張機能:chrome.storageデータをバックグラウンドスクリプトからポップアップ/コンテンツスクリプトに送信する

Chrome拡張機能のブラウザアクションポップアップが表示されないのはなぜですか?

Chrome拡張機能のバックグラウンドページ間でメッセージが正しく渡されない

ポップアップからコンテンツに渡されるChrome拡張機能メッセージ

Chrome拡張機能でアレイが表示されないドロップダウンボックス

Chrome拡張機能:ポップアップから応答を取得するコンテンツからバックグラウンドへのsendMessage

公開時にChrome拡張機能のバックグラウンドスクリプトが実行されない

Chrome拡張機能:更新後にのみバックグラウンドスクリプトが開始されない

Chrome拡張機能-バックグラウンドからカスタムHTMLページにデータを渡す

Chrome拡張機能popup.htmlを使用して、新しいポップアップウィンドウからDOM要素をターゲットにする方法

バックグラウンドスクリプト-Web拡張機能からthunderbirdメッセンジャーウィンドウオブジェクトにアクセスするにはどうすればよいですか?

Chrome拡張機能でバックグラウンドスクリプトを動的に実行するにはどうすればよいですか?

Chrome拡張機能のバックグラウンドスクリプトを使用してGoogleFirestoreにデータを追加できません

すでに実行中のプロセスからChrome拡張機能のバックグラウンドページを開く

Chrome拡張機能のポップアップが表示されない

Chrome拡張機能でバックグラウンドのメッセージリスナー内のアクティブなタブを取得するにはどうすればよいですか?

Chrome拡張機能でポップアップウィンドウが拡大しないようにする方法

Chrome拡張機能:コンテンツからバックグラウンドスクリプトへのメッセージパッシング

Chrome拡張機能のバックグラウンドスクリプトからのAngularJS

Chrome拡張機能でポップアップウィンドウを開いてアクセスする

拡張機能のアップデートで、すでに開いているChrome拡張機能のタブが閉じられます

Chrome拡張機能のバックグラウンドページでクリックイベントが機能しない

Chrome拡張機能のバックグラウンドスクリプトを手動でアンロードする方法はありますか?

コンテンツスクリプトからバックグラウンドスクリプトにメッセージを送信すると、Chrome拡張機能が壊れます

Chrome拡張機能のバックグラウンドスクリプトはいつ実行されますか?

TOP 一覧

  1. 1

    Python / SciPyのピーク検出アルゴリズム

  2. 2

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  3. 3

    tkinterウィンドウを閉じてもPythonプログラムが終了しない

  4. 4

    androidsoongビルドシステムによるネイティブコードカバレッジ

  5. 5

    ZScalerと証明書の問題により、Dockerを使用できません

  6. 6

    Reactでclsxを使用する方法

  7. 7

    VisualStudioコードの特異点/ドッカー画像でPythonインタープリターを使用するにはどうすればよいですか?

  8. 8

    二次導関数を数値計算するときの大きな誤差

  9. 9

    Ansibleで複数行のシェルスクリプトを実行する方法

  10. 10

    STSでループプロセス「クラスパス通知の送信」のループを停止する方法

  11. 11

    ビュー用にサイズ変更した後の画像の高さと幅を取得する方法

  12. 12

    Three.js indexed BufferGeometry vs. InstancedBufferGeometry

  13. 13

    __init__。pyファイルの整理中に循環インポートエラーが発生しました

  14. 14

    三項演算子良い練習の代わりとしてOptional.ofNullableを使用していますか?

  15. 15

    エンティティIDを含む@RequestBody属性をSpringの対応するエンティティに変換します

  16. 16

    Spring Boot Filter is not getting invoked if remove @component in fitler class

  17. 17

    値間の一致を見つける最も簡単な方法は何ですか

  18. 18

    reCAPTCHA-エラーコード:ユーザーの応答を検証するときの「missing-input-response」、「missing-input-secret」(POSTの詳細がない)

  19. 19

    Rパッケージ「AppliedPredictiveModeling」のインストール中にエラーが発生しました

  20. 20

    画像変更コードを実行してもボタンの画像が変更されない

  21. 21

    好き/愛の関係のためのデータベース設計

ホットタグ

アーカイブ