0

フレームセットを使用するアプリを作成しています。私が直面していた問題は、ページを更新するたびに、メイン フレームがフレーム内の現在の URL から index.php にリダイレクトされることでした。フレームをリロードすればうまくいきますが、それはあまり便利な解決策ではありません。

この問題を回避するために、html5 ブラウザーの状態変更を使用することを考えました。親フレームの URL を変更しても問題ありませんが、状態は変わりません。単純な更新では、全体が再びインデックス ページにリダイレクトされます。history.js を使用して、メイン フレームの現在の URL を履歴にプッシュしようとしました。これにより、更新または戻るたびに、少なくとも同じページにとどまります。

問題は、子フレームから親の状態を変更する方法がわからないことです。親 URL と子 URL の両方が同じドメインに存在します。history.js でそれを行うことは可能ですか? もしそうなら、どのように?

前もって感謝します。

4

1 に答える 1

0

次の方法で、iFrame 内の親ウィンドウへの参照を取得できます。

parentWindow = window.parent; 

そこから、次のように、親に直接影​​響を与える iFrame から任意の関数を呼び出すことができます。

parentWindow.location.reload();

アップデート

iFrame の状態を保持したい場合は、少し複雑になります。それ(iFrameの状態)を親に送信してから、Iframeの状態をサーバーに送信するフォーム送信を行う必要があります。次に、サーバーの応答により、iFrame が適切な状態で読み込まれます。

于 2013-05-29T05:57:42.153 に答える