InternetExplorer8には次のコードがあります。
if (window.opener != null && window.opener.foo != null) window.opener.foo = bar;
時々、window.opener
が設定されます。ただし、ユーザーがポップアップを開いてから離れる場合は、ポップアップにプロパティを設定する試みは避けてください。
FirefoxとChromeでは、ユーザーがそのウィンドウを終了または更新するとnullになるため、これは機能window.opener
します。ただし、IEではwindow.opener
nullwindow.opener.foo
ではなく、nullの代わりに「PermissionDenied」を指定します。このため、window.opener.foo != null
trueと評価されます。
この問題を回避するにはどうすればよいですか。InternetExplorerの「アクセスが拒否されました」に一致する値はどれですか。