まず、Rob Wが言ったことは非常に重要です。まだ知らない場合は、コンテンツスクリプトが実行されるさまざまな環境についての適切な説明が役立ちます。
あなたはこれをチェックしたいかもしれません。それはあなたが探しているものの100%ではありませんが、主要な部分はそこにあります。基本的に、バックグラウンドページから(まだ作成していない場合)、chrome.tabs.executeScript()を使用してダウンロードしたスクリプトを実行します。これは、「コンテンツスクリプト」コンテキストではなく、実際のページコンテキストでjavascriptを実行します。ここで必要なのは、そのスクリプトを(文字列形式で)バックグラウンドページに移動し、(送信者タブから)実行するtabIdを決定することだけです。
chrome.extension.sendMessageを使用してバックグラウンドページに送信し、background.jsでchrome.extension.onMessageを使用してスクリプトとともにメッセージを受信できます。そこからsender引数を使用してtabId(sender.tab.id)を取得し、executeScript呼び出しを作成します。
もう1つの役立つヒントとして、Chromeのページスクリプト(動的なJavaScriptの実行)は、デフォルトではChromeデバッガーに設定された方法で表示されませんが、JavaScriptの文字列に次のようなものを追加できます。
"\n//@ sourceURL=/myFolder/myDynamicJavascript.js"
これにより、このスクリプトは常にchromeデバッガーの「/myFolder/myDynamicJavascript.js」パスとともに表示され、挿入したjsコードにブレークポイントを設定できるようになります。それは命の恩人です。