JavaScriptのparent・top・selfとは?フレーム階層を参照する方法を初心者向けに解説
parent・top・self は、フレーム(またはウィンドウ)同士の階層関係を参照するためのプロパティです。
フレーム構造を持つページで、他のフレームを操作したいときに利用します。
parentプロパティとは?(親フレームを参照)
parent は、現在のフレームを含んでいる「親フレーム」を参照します。
親フレームを経由して、別のフレームを操作することもできます。
使用例:親フレーム内の別フレームを操作
parent.down.document.write(“DUMMY”);
→ 現在のフレームから、親フレーム内の down フレームを操作しています。
topプロパティとは?(最上位フレームを参照)
top は、フレーム階層の最上位にあるフレーム(トップフレーム)を参照します。
→ 最上位フレーム内の 1 番目のフレーム名を表示します。
selfプロパティとは?(自分自身のフレームを参照)
self は、自分自身のフレームを参照します。
window と同じ意味で、現在のフレームを明示的に指定したいときに使います。
self.document.bgColor = “#33ff99”;
→ 現在のフレームの背景色が緑色に変わります。
3つのプロパティの違いまとめ
| プロパティ | 参照先 |
|---|---|
| parent | 現在のフレームを含む「親フレーム」 |
| top | フレーム階層の最上位フレーム |
| self | 自分自身のフレーム(window と同じ) |
注意点
- フレーム(frameset)は HTML5 では非推奨
- モダンWebでは iframe の使用が一般的
- フレーム間の操作はセキュリティ制限(同一オリジンポリシー)を受ける