2012-03-19 18 views
4

子ウィンドウの親ウィンドウに定義されたグローバルオブジェクトまたは配列にアクセスするにはどうすればよいですか。iFrame/WindowからJavaScriptの親オブジェクトにアクセスする

<script> 
    var events_data; 
    function function_to_fill_events_data() { 
     . 
     . 
     . 
    } 
</script> 

<div> 
    <div><iframe src="mini.php" width:100%; height: 100%;" scrolling="no"></iframe> </div> 
</div> 

私がミニドキュメントに入っているとき、javascript関数のevents_data変数にアクセスしたいと思います。

答えて

8

オプション1

あなたのタイトルは、子ウィンドウを言及しています。あなたはインラインフレームを子ウィンドウがあり、そうでない場合は、これを使用:

window.opener.events_data 

window.opener on MDNをチェックしてください。

オプション2

あなたのコードは、インラインフレームを使用していることを示しています。 IFRAMEからは、単にparentを使用します。

parent.events_data; 

window.parent on MDNをチェックしてください。


window.opener - この現在のウィンドウを開いたウィンドウへの参照を返します。

window.parent - ウィンドウが、、、またはでロードされている場合、その親はウィンドウを埋め込んでいる要素のウィンドウです。

+0

これは素晴らしいことです。オプション2を実行しても機能します。 – user823527

+0

許可denielはどうですか?ブラウザでiframeの親プロパティにアクセスできない場合は、 –

+0

私が間違っていない場合、これはiframeの内容が別のドメイン –