2016-11-14 14 views
1

申し訳ありません。opener.document.location.hrefはChromeで動作しません

息子ウィンドウを閉じた後に親ウィンドウをリロードしようとしています。コードはIEで正常に動作します。 Chromeではサポートされていません(バージョン54.0.2840.99 m)。

Chromeの設定に問題はありますか?またはコードの問題?

私はすべてのソリューションを検索して試しましたが、それでも機能しません。手伝ってください!!おかげ

<!-- Parent Window --> 
<head> 
<script language="javascript" type="text/javascript"> 
function popitup2(url) { 
    newwindow=window.open(url,'email','top=200,left=500,height=500,width=600'); 
    if (window.focus) {newwindow.focus()} 
    return false; 
} 


</script> 



</head> 
<body > 
<A href='s.htm' onclick="return popitup2('s.htm')">Call S Method 1</a> 
<BR><BR> 
<a href="#" onClick="window.open('s.htm', '_blank')">Call S method 2/a> 

<p id="demo"></p> 

<script> 
var d = new Date(); 
document.getElementById("demo").innerHTML = d; 
</script> 
</body> 



<!--Son window (s.htm) --> 

<head> 
<script type="text/javascript"> 

window.onunload = unloadPage; 

function unloadPage() 
{ 

window.opener.location.reload(); 
} 
</script> 
</head> 

<body> 
Son !! 
</body> 
</html> 
+0

Google Chromeブラウザの最新バージョン'54 .0.2840.71 m]で[Javascript 'onunload'イベントが重複している可能性があります](http://stackoverflow.com/questions/40280974/javascript-onunload-event-not-working -in-latest-version-54-0-2840-71-m-of-go) –

答えて

0

は、それは動作しませんwindow.opener.location.reload()はありませんが、それはonunloadイベントからそれを呼び出しています。上記の例では

https://plnkr.co/edit/RGIrrupeqxd2bmc9M7ex?p=preview

:あなたは

チェック私が何を意味するか見るために、このplunker(スパムなどを防ぐために)そのイベントハンドラで行うことを許可されているものにのような非常に厳格なルールがあります。リンクをクリックすると子ページから親ページをリロードできますが、アンロードイベントではまったく同じコードは機能しません。

+2

https://bugs.chromium.org/p/chromium/issues/detail?id=660496 –

+0

ありがとうございますそれが実際にバグか意図どおりに動作しているかどうかは確かですが、結果は同じですが、アンロードハンドラからは機能しません。 – Robba

+0

まずはあなたの助けに感謝します。しかし、親ページのunloadPageイベントをリロードする必要がある場合はどうしたらよいですか? – user3317440

関連する問題