简体   繁体   中英

window.opener is null after redirect

I am opening a paypal window from the parent with window.open() . After payment and redirecting back to my page (in the popup window), I would like to close the popup and update the parent window URL.

I found out this works over window.opener.location.

However the console shows

window.opener.location is null

after redirection because as the child window changes, the popup looses the information about the opener.

Well great. Now is there any way to get around this? Maybe adding a sort of "listener" to the parent who listens to the URL of the child?

window.opener is removed whenever you navigate to a different host (for security reasons), there is no way around it. The only option should be doing the payment in a frame if it is possible. The top document needs to stay on the same host.

First you can have a timer function in the parent windows to check whether the child window is opened or closed at particular time interval say 100ms or so. If it is closed then you can reload the parent window.

The issue with window.opener in IE is when you using localhost site and the internet site like paypal. Simply change location of your local host from Local Intranet to the Internet zone and the opener will not be null.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM