У меня возникла проблема, связанная с моим родительским окном дочернему iFrame. Но с другой стороны все работает отлично. Вот как я получаю CHiL объект Iframe для того, чтобы поджечь PostMessage функции:Проблема с сообщением postMessage от родителя к дочернему iFrame
var iFrame = document.getElementById('Frame').contentWindow;
Когда я печатаю его Int он утешит, я получаю следующее:
Window {parent: Window, opener: null, top: Window, length: 0, frames: Window…}
Когда Я перехожу к функции postMessage следующим образом:
iFrame.postMessage("message", "http://contoso.com");
Это показывает мне erro r при загрузке страницы: iFrame.postMessage не является функцией. Когда я исполняю PostMessage в консоли, я получаю неопределенными
Что я делаю неправильно?
Вы по-прежнему должны иметь контроль над обоими сайтами. У вас есть 'contoso.com'? – zer00ne
Вам нужно настроить e.origin на 'contoso.com', вы уверены, что можете редактировать этот сайт? В прошлый раз, когда я проверил, MS все еще принадлежала ему. – zer00ne
Я заменил свой сайт contoso.com только для публикации. В слушателе событий в дочернем iFrame e.origin устанавливается правильно. Я добавил журнал непосредственно перед тем, как манипулировать объектом события, но он никогда не доходит до этого. –