簡體   English   中英

從父頁面重新加載子頁面

[英]Reload a child page from parent page

我希望每次單擊“重新加載”時都會從父頁面重新加載子頁面(從父頁面的鏈接打開)。

我用了這個,但是當我刷新父頁面時這不起作用。

<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>

在這個問題上有幫助嗎?

出於安全原因,您無法在現代瀏覽器中讀取或更改(包括重新加載)已加載了另一個域(例如htt://google.com ,假設您不是Google編碼器)URL的window / iframe。

因此,除非遠程服務器授權了它 ,否則您將無法執行此操作,這種情況並不常見。

如果頁面在同一域中,則可以:

<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>​

在測試中請務必始終在http:// (而不是file:// )中打開,因為2個本地文件始終被視為單獨的域。

請注意,如果您給窗口命名,即使您在以下時間之間重新加載了父頁面,下次將在同一窗口中加載它:

<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>

想法是在加載時檢查子窗口是否上次打開,並在必要時強制其重新加載。

當然,僅當父母和孩子來自同一域時,此方法才有效。

您可以重新打開頁面,在大多數情況下,該頁面與重新加載具有相同的效果。

<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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM