5

ユーザーが表示しているページからデータを取得し、そのデータを拡張機能ポップアップに送信しようとしています。現在のページから情報を抽出するのに問題が発生しています。google codeチュートリアルを確認した後、マニフェストとコンテンツスクリプトを次のように設定しました。id = "comments"のスパンを持つテストページに移動すると、挿入されたコンテンツスクリプトの変数は常にnullになります。誰かが私が行方不明になる可能性があることを知っていますか?ありがとう!

manifest.json
=================
{
    "name": "Sample Extension",
    "version": "0.0.1",
    "description": "Sample extension",
    "icons": {"128": "icon.png"},
    "permissions": [
        "tabs", "<all_urls>"
    ],
    "browser_action": {
        "default_icon": "browseraction.png",
        "default_title": "Sample",
        "popup": "popup.html"
    },
    "content_scripts": [
        {
            "matches": ["http://*/*", "<all_urls>" ],
            "js": ["scripts/contentscript.js"]
        }
    ]
}

contentscript.js
===================
var comments = document.getElementById("comments");
alert( comments.innerText );
4

1 に答える 1

6

スクリプトの実行後にコメントが読み込まれる可能性があります。

マニフェストでこれを設定してみてください:

        "run_at" : "document_end",

または、AJAXの読み込みが疑われる場合は、後でコードを.で呼び出しますsetTimeout

もちろん、最良のスキームは正確なページとその内部の仕組みに依存します。

于 2012-06-14T18:47:54.857 に答える