Comunicação de alteração de hash entre domínios

Por favor, considere os seguintes dois domínios: domain1.com e domain2.

Do domínio1, abro um iframe que aponta para o domínio2.

Agora, quero que esses caras se comuniquem, o que consegui com sucesso aplicando ouvintes de eventos de alteração de hash nos dois domínios.

Dessa forma, o hash na janela pai (domínio1) será acionado se o domínio2 chamar parent.location com um novo hash. Além disso, o evento de alteração de hash é acionado no iframe se eu, do pai, alterar seu atributo src para um novo hash.

Isso funciona muito bem!

Aí vem o problema:

A funcionalidade de avançar e retroceder no navegador é uma bagunça. Simplificando, ao criar duas instâncias de hash, o botão Voltar do navegador deve ser clicado duas vezes para que o hash pai seja alterado, pois ele precisa percorrer primeiro o hash do iframe.

Como posso me comunicar com um iframe de domínio cruzado bidirecional sem estragar o objeto de histórico?

Obrigado!

questionAnswers(2)

yourAnswerToTheQuestion