ページが埋め込まれているかどうかを確認する

ページがページレイアウトに埋め込まれているか、URLで直接埋め込まれているかを調べるにはどうすればよいですか?サーバサイドで見つけることができない場合、Javascriptで見つけることは可能でしょうか?ページが埋め込まれているか直接読み込まれているかによって、別のJavascriptロジックが必要です。

ベストアンサー

埋め込みページはiframeにレンダリングされますが、 window.frameElement
を使用して、ページがiframe内にあるかどうかを検出できます。

これを検出するための文書化された標準はjavascriptです:

var frameEl = window.frameElement;
// If we are inside a frame, then change its URL to 'http://mozilla.org/'
if (frameEl) {
  frameEl.src = 'http://mozilla.org/';
}

Related Documentation: Mozilla – window.frameElement

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です