2014年8月6日水曜日

子フレームから親フレームを呼び出す

親フレームで読み込んでいるiframeから、親フレームの関数を呼び出します。

親フレーム========================
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>親フレーム</title>

<script language="JavaScript">
function testalert(){
alert('お父さんだよ');
}
</script>

</head>
<body>

<iframe src="./iframe.html" height=300 width=300 name="hey">
</iframe>

<iframe src="./iframe2.html" height=300 width=300 name="heyhey">
</iframe>

</body>
</html>


子フレーム1====================
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>子供1</title>
<script language="JavaScript">
function call(){
alert("兄弟だよ");
window.parent.testalert();
}
</script>
</head>
<body>
<input type="button" value="親を呼びます" onclick = "call()">
</body>
</html>

子フレーム2====================
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>子供2</title>
<script language="JavaScript">
function call(){
  alert("iframe2");
  window.parent.frames['hey'].call();
}
</script>
</head>
<body>
<input type="button" value="兄弟と親を呼びます" onclick = "call()">
</body>
</html>


子フレーム1
window.parent.testalert();

子フレーム2
window.parent.frames['hey'].call();

が重要。


デバッグ時の注意:Chromeはローカル実行するとエラー出ます。
サーバに置けば問題無いのではっていう 多分

0 件のコメント:

コメントを投稿