0

リロードをクリックすると、親ページから毎回リロードされる子ページ(親ページのリンクから開かれる)が必要です。

これを使用しましたが、親ページを更新すると機能しません。

<li><a href="js.php" title="alert-tab"  onclick="myWindow=window.open('http://www.google.com','_blank');">New Window</a></li>

<li><a href="#" title="alert-tab"  onclick="myWindow.location.reload();">Reload</a></li>

この問題に関するヘルプはありますか?

4

2 に答える 2

1

セキュリティ上の理由から、最新のブラウザーでは、別のドメインの URL で読み込まれたウィンドウ/iframe を読み取ったり変更したり (リロードを含む) することはできません (たとえばhtt://google.com、Google のコーダーではない場合)。

したがって、頻繁ではない遠隔サーバーがそれを承認した場合を除いて、それを行うことはできません.

ページが同じドメインにある場合、これは機能します:

<li><a href="#" title="alert-tab"  onclick="myWindow=window.open('index2.html','_blank');">New Window</a></li>
<li><a href="#" title="alert-tab"  onclick="myWindow.location.reload();">Reload</a></li>​

2 つのローカル ファイルは常に別個のドメインと見なされるため、テストでは常にhttp://(ではなく)で開くように注意してください。file://

ウィンドウに名前を付けると、親ページを途中でリロードしたとしても、次にロードされるときは同じウィンドウになることに注意してください。

<li><a href="#" title="alert-tab"  onclick="myWindow=window.open('index2.html','someName');">New Window</a></li>

したがって、親ページをリロードするときに子ページをリロードしたい場合は、次のようにすることができます。

<li><a href="#" title="alert-tab" id=mylink>New Window</a></li>
<script>
function openPage(){
    myWindow=window.open('index2.html','someName');
    localStorage['open'] = 'yes';
}
window.onload = function(){
    document.getElementById('mylink').onclick=openPage;
    if (localStorage['open']=='yes')  myWindow=window.open('index2.html','someName');
    localStorage['open'] = 'no';
};
</script>

前回子ウィンドウが開いていたかどうかを読み込み時に確認し、必要に応じて再読み込みを強制するという考え方です。

もちろん、これは親と子が同じドメインから提供されている場合にのみ機能します。

于 2012-07-17T10:53:48.467 に答える
0

ページを再度開くことができます。これは、ほとんどの場合、再読み込みと同じ効果があります。

<li><a href="js.php" title="alert-tab"  onclick="myWindow=window.open('http://www.google.com','_blank');">New Window</a></li>

<li><a href="#" title="alert-tab"  onclick="myWindow=window.open('http://www.google.com','_blank');">Reload</a></li>
于 2012-07-17T10:56:36.163 に答える