Gmail コンテンツ スクリプトでのグローバル変数へのアクセス
Chrome 拡張機能を使用して、アクティブな Gmail メッセージの Web ページから GLOBALS 変数を取得するソリューションを探しています。 .
コンテンツ スクリプトの分離
コンテンツ スクリプトは分離された環境で実行され、ページのグローバル変数への直接アクセスを防ぎます。
メッセージ パッシング手法
この分離を克服するには、次のメッセージ パッシング手法を検討してください。
スクリプト要素の挿入
ページの DOM にスクリプト要素を挿入する拡張 URL を使用します:
<code class="javascript">var s = document.createElement('script'); s.src = chrome.extension.getURL('script.js'); (document.head||document.documentElement).appendChild(s);</code>
イベント リスナーの確立
さらに、データ交換用のイベント リスナーを確立します:
<code class="javascript">document.addEventListener('RW759_connectExtension', function(e) { alert(e.detail); // Transfer data, e.g., GLOBALS });</code>
Script.js インジェクション
「script.js」内 (マニフェストの web_accessible_resources に追加):
<code class="javascript">setTimeout(function() { document.dispatchEvent(new CustomEvent('RW759_connectExtension', { detail: GLOBALS // Send GLOBALS to the extension })); }, 0);</code>
メッセージ パッシングの利点
メッセージ パッシングのアプローチでは、限定的な拡張ロジックを Web ページに公開し、拡張 Chrome API 関数にアクセスできます。
結論
これらの手法を実装することで、効果的に次のことが可能になります。 Chrome 拡張機能のコンテンツ スクリプトから GLOBALS などのグローバル変数にアクセスします。
以上がChrome 拡張機能で Gmail のコンテンツ スクリプトからグローバル変数にアクセスする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。