-1

iframeを含むページを作成しました。

iframe内にあるページは、iframeを含むページから現在のURLを取得する必要があります。

誰かがこれを行うために私がしなければならないことを知っていますか?

4

1 に答える 1

0

あなたが取ることができる2つのアプローチがあります:JavascriptアプローチとPHPアプローチ。

JAVASCRIPT

iframeが親ページと同じドメインにある場合、または子ドメインが親ドメインにアクセスできるようにするXXSルールを設定している場合にのみ機能します

location.href上記の基準を満たしていると仮定すると、親ウィンドウのプロパティを取得することで、Javascriptを使用して親ページのURLにアクセスできます。

alert('The parent window url is: '+window.top.location.href);

を使用することもできますwindow.parent.location.href

iframeが親とは異なるドメインである場合、それらをオーバーライドしない限り、クロスドメインスクリプティングルールのためにこれは機能しません。両方のドメインを制御する場合、iframeのドメイン( http://www.w3.org/TR/access-control/ )からのアクセスを明確に許可する親ドメインのクロスドメインスクリプティングルールを作成できる場合があります。これが完了すると、上記のコードを使用できます。

PHPアプローチ

動作しますが、親ページの制御はユーザーに依存します

または、親ページに静的URLがある場合は、それを_GET変数としてiframeに渡すことができます。

<iframe src="/iframe/url.php?parent_src=<?php echo urlencode($_SERVER['REQUEST_URI']);?>"></iframe>

<?php $parent_url = urldecode($_GET['parent_src']); ?>

$parent_urlこれで、変数の親URLを操作できます。

<? echo "The parent's URL is: http://thedomain.com".$parent_url;?>
于 2012-12-07T18:34:53.313 に答える