自動的(強制的)にフレームを解除させる

今回は、誤ってフレーム内に表示されても、自動的にフレームを解除して自分のページを表示させる方法をご紹介致します。
JavaScriptをたった1行記述するだけで実現できます。

その方法をご紹介する前に、まずは、(リンク元側から)フレームを解除してリンク先を表示するリンク方法をご紹介致します。

リンク元からフレームを解除するには

『フレーム使用ページ』から『フレーム非使用ページ』へ移動させる際(つまりフレームを解除してリンク先を表示したい場合)には、 リンクを次のように記述します。

<a href="(リンク先URL)" target="_top"> ~ </a>

この「target="_top"」という記述がないと、リンク先のページを、フレーム内に表示してしまいます。 ですから、フレームの内部で表示されるページ内のリンクは、上記のように記述する必要があります。

とは言っても、特にページ数が多くなると、ミスも出てくるでしょう。1カ所ミスするだけで、それ以降のすべてのページがフレーム内に表示されることになってしまい大変です。
誤ってフレーム内に表示されるページが、自サイト内のページだけならまだ良いのですが、外部のホームページまでフレーム内に表示してしまうと、そのサイトの管理者から怒られるかも知れません。

フレーム内に表示されるのを防ぐスクリプト

さて、上記のように、リンク先を「フレーム内で表示」させるか「フレームを解除して表示」させるかは、リンク元のHTMLの記述次第で決定されます。 ですから、リンク元が自分の管理下にない他のホームページだったら、どうしようもありません。

しかし、「リンクされる側」でもJavaScriptを使うことでフレームの制御が可能です。
このスクリプト(たったの1行!)を使えば、自分のページがフレーム内部に表示されてしまうのを自動的に回避することができます。

その方法は、次のページで! →