2011-11-07 7 views
5

でページを読み込みます私は、IFRAMEのコードを取得する方法を見つけ出すことはできませんHTMLは、私がMXを持っているのiframe

(明らかに)別のページ... ...

私は私だけのようなスタートページをretrive Webページのコンテンツを取得しようとする場合は、次の

ファイルwebpage.html

<html> 
<!-- html code--> 
<iframe src="http://host/framepage.html">content default</iframe> 
<!-- other html code--> 
</html> 

私は、文字列に<div>test test test</div>

を取得したいのですが、ファイルframepage.html

<div>test test test</div> 

(それをリロードせず)のiframeの内容を取得する方法があることを教えてください。の応答を見てみると...

EDIT

var iFrame:* = domWindow.document.getElementById("myIframe"); 

を使用して Exortが、私にはiframeを返しますが、内容はそれは私が... は、上記の私のWebページとframepage例を使用したいものではありません、私が得るのiframeコンテンツが

content default

です代わりに

<div>test test test</div>

それは2番目のページがロードされていないようようなものだが、それは実際には(私も試してみましたUSIロードされ、ブラウザウィンドウでレンダリングされていますの

ボタンをクリックすると、iframeコンテンツの検索が遅れることがあります。

+0

iframeは親プロジェクトとまったく同じドメインですか? – Wes

+0

はいそれは同じドメインにあります – Marcx

+0

この質問は重複の一種です:http://stackoverflow.com/questions/785823/accessing-an-iframes-contents-in-adobe-air –

答えて

1

私は時間がないので、これは本当に深い答えではないかもしれませんが、iframeはウィンドウ内で検討され、独自のドキュメントを持っています。あなたは、このようなものでhtml DOMを使ってコンテンツを得ることができます。これは、私はオブジェクト型として '*'を使用している場合、イベント、AS3です。オブジェクト型の使用はここではうまくいきません。

var domWindow:* = myHTML.htmlLoader.window; //DOM window object 

//if you don't have the id, you can get all iframes with getElementsByTagName("iframe") 
var iFrame:* = domWindow.document.getElementById("myIframe"); 

var iFrameContent:String = iframe.contentDocument.body.innerHTML; 
+0

それは動作しませんが、最後の2行が結果を与えないという事実を除いて、 'iframe'を取得してデータを取得できませんでした。代わりに、最初のページにあるiframeの" text "を取得できます。私はより明確にするために投稿を編集しました。 – Marcx

+0

残念ながら私はそれをテストすることはできませんが、その解決策はその周りです。デバッグ時にiframeを調べて、ウィンドウを取得できないかどうか確認してください。私の頭の上からはcontentWindowでしたが、それは別のものかもしれません。後で詳細をご提供できるかどうかがわかります。ごめんなさい! – Exort

+0

NP!私は少なくとも午前中はデバッグウィンドウを調べて何も役に立たなかったので、ここで尋ねました。誰かが助けてくれることを願って。 – Marcx

関連する問題