How to access parent window in javascript when popup is in a different domain
I have an html page in www.x.com domain that open a popup with window.open containing another page in www.y.com domain and i want these page to comunicate with window.postMessage, how can i access to parent page within the popup ? I tryed window.opener but it is undefined
Izabrano rješenje
You just cannot do that. Cross-site scripting is not allowed in most browsers.
You can, however, communicate with the other window via cross-document messaging described here: https://developer.mozilla.org/en/DOM/window.postMessage
The most you can to is to send a message from the popup to the opener and listen for such message in the opener. The opener then has to change its location on its own.
// popup: window.opener.postMessage('replace your location', '*');
// opener: window.onmessage = function (e) {
if (e.data === 'replace your location') { window.location.replace(...); }
};
Pročitaj ovaj odgovor u kontekstu 👍 1Svi odgovori (1)
Odabrano rješenje
You just cannot do that. Cross-site scripting is not allowed in most browsers.
You can, however, communicate with the other window via cross-document messaging described here: https://developer.mozilla.org/en/DOM/window.postMessage
The most you can to is to send a message from the popup to the opener and listen for such message in the opener. The opener then has to change its location on its own.
// popup: window.opener.postMessage('replace your location', '*');
// opener: window.onmessage = function (e) {
if (e.data === 'replace your location') { window.location.replace(...); }
};