第80回 「全フレームを解除する」
今回は全フレームを解除する方法について説明します。
全フレームを解除するには以下のように書きます。
top.location.href = 新しく表示するページURL;
これで全フレームが解除されます。実際のプログラムは以下のようになります。
●フレーム分割ファイル1
<html>
<head>
<title>Frame Sample</title>
<frameset cols="20%,*">
<frame src="left.html">
<frame src="index2.html">
</frameset>
</head>
</html>
●フレーム分割ファイル2
<html>
<head>
<title>Frame Sample</title>
<frameset cols="20%,*">
<frame src="left.html">
<frame src="right.html">
</frameset>
</head>
</html>
●left.html
<html>
<head>
<title>Sample</title>
<script language="JavaScript"><!--
function change()
{
top.location.href = "newTop.html";
}
// --></script>
</head>
<body>
■<a href="javascript:change()">クリックする</a>全フレームが解除されます。
</body>
</html>
*その他のファイルは省略
このようにすると全フレームが確実に解除される、という保証はありません。というのも、フレーム分割ファイル1と2のページがあるURLのドメインが異なっているとフレームを解除する事ができないためです。このような場合は、topでなくparentで内側のフレームからフレームを解除するようにする必要があります。
次回はフレームのプロパティを操作する方法について説明します。