[英]Is it possible to reload a page in a parent window using javascript from a child window?
[英]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.