- ベストアンサー
htmlでiframeされないようにする設定
- htmlでWEBページを作成していて偶然気付いたのですが、iframeでgoogleを指定しても表示されません。
- 自分のサイトが知らないところで他のhtmlのiframeに納まっているなんてことは滅多にある事ではないが、あったら気持ち悪い。
- googleのように他のhtmlからiframeで呼び出せないようにするには、どのような設定が必要なのでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
<head> <title>タイトル</title> <script> if (top != self) { top.location.href = self.location.href } </script> </head> フレーム内に表示されると、自動的にフレームを解除して貴方のページを表示します。 これは、一番上のフレーム(top)が自分(self)でなければ 一番上のフレームのURL(top.location.href)を自分(self.location.href)にしろという意味です。 警告ページ等を表示したい場合は次の部分を書き換えて下さい。 top.location.href = self.location.href ・フレームを解除して警告ページを表示する場合 top.location.href = "error.html" ・フレームをそのままに警告ページ等を表示したい場合 location.href = "error.html" ※ブラウザのJavaScriptが無効になっていると動作しません。 JavaScriptを無効にしている場合はほとんどないですが。
その他の回答 (1)
- t_ohta
- ベストアンサー率38% (5238/13705)
JavaScriptを使えば判定できます。 if (window==parent){ .... で親フレームか子フレームか判別します。 以下のようなHTMLファイルを2つ用意してテストして見て下さい。 test1.html <html lang='ja'> <head> <title>タイトル</title> </head> <body> <script> if (window==parent){ document.write('おや'); } else if(window!=parent){ document.write('こ'); } </script> <br> <iframe src="./test2.html" height="500" width="500"></iframe><br> </body> </html> test2.html <html lang='ja'> <head> <title>タイトル</title> </head> <body> <script> if (window==parent){ document.write('おや'); } else if(window!=parent){ document.write('こ'); } </script> </body> </html>
お礼
ありがとうございます。
お礼
ありがとうございます。