0
私は、ページ上のすべてのiFramesにイベントハンドラを挿入する必要があるブラウザ拡張を開発しようとしてきました。私はDisqusのコメントシステムで使用されているものと同様に、一部のiFramesにはコンテンツがありますがcontentDocumentはないことがわかりました。コンテンツを持つiFrameには、未定義のcontentDocumentオブジェクトがありますか?
どうすればできますか?contentDocumentを持たないiframeのイベントハンドラにはどうすればアクセスできますか?
たとえば、thisページの下部にあるコメントセクションをご覧ください。コメントテキスト領域を調べると、contentDocumentを持たないiFrameにコメントが表示されます。
によって引き起こされます。 Disqusのコメントボックスは別のドメインからのものであるため、コンテンツスクリプトがその要素にアクセスすることができません。これは単なる理論ですが、私は "all_frames"を設定すると混乱します:本当に、スクリプトはフレームにちょうど良いものを注入します。しかし、スクリプト全体は必要なく、イベントハンドラは2つしか必要ありません。 – ZeroDivide
はい、同じドメインポリシーは、あなたがiFrameコンテンツにアクセスできないことを意味します。 –