0

私の chrome 拡張機能は、js ファイルへのいくつかの参照を追加します (例: <script src="javascript_file_1.js"></script>)。クロムの「要素の検査」機能を使用すると、すべての参照が正しく追加されていることがわかりますが、「ロード」されていないようです。これらの新しい js ファイルが読み込まれるように、ページを「再実行」する方法はありますか?

私が使用するコードは次のとおりです。

var srcArray = ["javascript_file_1.js",
        "javascript_file_2.js",
        "javascript_file_3.js",
        "javascript_file_4.js",
        "javascript_file_5.js",
        "javascript_file_6.js",
        "javascript_file_7.js"];

function AddScript(value)
{
    var entry = document.createElement("SCRIPT")
    entry.src = value;
    document.head.appendChild(entry);

}

ページがレンダリングされた後に追加されたように見えるため、ページのレンダリング中にコンテンツは使用されませんでした。

どうもありがとう、ルーク

4

1 に答える 1

0

コンテンツ スクリプトを"run_at" : "document_start"で挿入します。このオプションで挿入されたスクリプトは の直後に挿入されますがcss injection、DOM が構築されるか、他のスクリプトが実行される前に挿入されます。

{
  "name": "My extension",
  ...
  "content_scripts": [
    {
      "matches": ["http://www.google.com/*"],
      "css": ["mystyles.css"],
      "js": ["jquery.js", "myscript.js"],
      "run_at": "document_start"
    }
  ],
  ...
}

このオプションを使用すると、ページのレンダリング中にコードが使用されます。

于 2013-01-04T10:44:11.880 に答える