Я реализовал междоменный обмен сообщениями между главной страницей и iframe. Работает во всех браузерах, кроме Opera Mini.
Родительская страница имеет следующий код:
if (window.addEventListener) {
window.addEventListener("message", function(event) { alert(event.data);}, false);
} else if (window.attachEvent) {
window.attachEvent("onmessage", function(event) { alert(event.data);});
}
На странице iframe есть этот код:
window.parent.postMessage('test', '*');
Когда iframe пытается получить доступ к window.parent для выполнения метода postMessage, Opera Mini выдает исключение: «Ошибка безопасности: попытка прочитать защищенную переменную». Все остальные браузеры жаловаться не будут.
См. Пример здесь: http://mala.s3-eu-west-1.amazonaws.com/main.html
Есть ли обходной путь?