Javascript-форум (https://javascript.ru/forum/)
-   Opera, Safari и др. (https://javascript.ru/forum/css-html-browser/)
-   -   postMessage() в Chrome (https://javascript.ru/forum/css-html-browser/26030-postmessage-v-chrome.html)

ChikiSt 23.02.2012 08:41

postMessage() в Chrome
 
Здравствуйте. Нужно организовать кроссдоменную отправку сообщений через iframe.
Отправляющее окно
var ifr=document.createElement('div');
		ifr.innerHTML='<iframe id="iframe" src="http://domain2.com/in.php" style="display:none"><iframe>'
		document.body.appendChild(ifr);
		document.getElementById("iframe").onload=function(){
			//alert(document.getElementById("iframe").contentWindow)
			//alert(document.getElementById("iframe").contentDocument)
			document.getElementById("iframe").contentWindow.postMessage("сообщение", "http://domain2.com");
		}

Принимающее
function listener(event){alert(event.data);}
if (window.addEventListener) window.addEventListener("message", listener, false);
	else window.attachEvent("onmessage", listener);


В Опере всё отлично, а вот Хром работать отказывается. В консоле выдаёт "Uncaught TypeError: Cannot call method 'postMessage' of undefined".
Подскажите пожалуйста, в чём может быть ошибка ?

ChikiSt 26.02.2012 17:11

всё ещё актуально

DreamTheater 26.02.2012 17:17

Цитата:

Сообщение от ChikiSt (Сообщение 160016)
всё ещё актуально

Какой DOCTYPE используете?

ChikiSt 26.02.2012 21:15

DreamTheater, я не знаю что такое DOCTYPE.
Пишу пользовательский скрипт для разгадывания капчи.

DreamTheater 26.02.2012 21:45

postMessage работает только если Вы используете HTML5.


Часовой пояс GMT +3, время: 21:34.