web-dev-qa-db-ja.com

contentDocumentとcontentWindow javascript iframe / frameアクセスプロパティの違い

  • これら2つのプロパティ(contentDocumentとcontentWindow)の違いは何ですか?
  • フレーム/ iframeでコンテンツにアクセスする方法に違いはありますか?
  • パフォーマンスの問題はありますか?
  • contentXXXXX.document.getElementsBy...またはcontentXXXXX.getElementsBy...を使用する必要がありますか?

私はウェブでいろいろ探していましたが、あまり多くの情報を見つけていませんでした。大きな研究をする前に、私はここstackoverflowで素晴らしいコミュニティに尋ねることができると思いました。コメントとして、Webページ上の入力をカウントするスクリプトを実行し、すべてのレベルのフレームまたはiframeにアクセスし、frames/iframe内にあるそれらの入力をグローバルカウントに追加しています。すべてのコンテンツは同じドメインからのものであることが想定されているので、同じ起源ポリシーに問題はないはずです。このスクリプトでは、jQueryを使用せず、u_u jajaを簡単にするフレームワーク/ライブラリーのみを使用しています。これは練習用のスクリプトであり、誰かがコードをご覧になりたい場合は、問題なく投稿します。これを説明するのに時間を割いてくれた人に感謝します!

30
Samuel Lopez

私は思います - <iframe> MDNドキュメント よく説明しています:

DOMのiframe要素から、スクリプトはwindowプロパティを介して、含まれているHTMLページのcontentWindowオブジェクトにアクセスできます。 contentDocumentプロパティは、document内のiframe要素を参照します(これはcontentWindow.document)、ただしIE8より前のInternet Explorerバージョンではサポートされていません。

したがって、contentWindowを使用するときと同じ方法でwindowを使用し、contentDocumentdocumentを使用します。

61
Felix Kling