インラインフレームに表示できないようにする


動作ブラウザ 【 IE:4.0  NN:6.0
Internet Explorer Netscape Navigator Opera iCab Safari
3.0x 4.0x 4.5 5.0x 5.5 6.0 2.0x 3.0x 4.0x 4.x 6.0 7.0 6.x 7.x 2.x 1.x
Windows × - × × × × - × - -
Macintosh × × × - × × × × - - ×
UNIX - - - - - × × × × - - - -

ポイント
try{ pURL = parent.location.href; }
catch(e){ }
myURL = location.href;

説  明 自分のページ内容がインラインフレームによって他人のページに表示されてしまうことがあります。このような場合、親(フレーム)が存在するかどうか、親(フレーム)のページURLと自分自身のURLを比較することで自分のページを勝手にインラインフレームに表示できないようにすることができます。
Netscape、Mozilla、Firefoxを対象にしない場合は例外処理のtry, catchはなくても構いません。
サンプル
<html>
<head>
<title>インラインフレームに表示できないようにする</title>
<script language="JavaScript"><!--
function check()
{
try{ pURL = parent.location.href; }
catch(e){ }
myURL = location.href;
alert(pURL+"\n"+myURL);
if (pURL != myURL) alert("勝手にインラインフレームに表示しないでください"); else alert("OK");
}
// --></script>
</head>
<body>
<form name="myFORM">
<input type="button" value="チェック" onClick="check()">
</form>
</body>
</html>

補足説明 なし

■サンプルスクリプトを実行する >>実行
■各ブラウザでの動作結果を見る >>View!


写真素材 PIXTA