Pergunta

Esta é a configuração:

Eu tenho dois sites em dois domínios diferentes:

  • www.website1.com
  • www.someotherwebsite.com

Isto é o que eu quero fazer:

  1. Quando um usuário está em www.website1.com e clica em um link, eu quero uma janela pop-up para mostrar www.someotherwebsite.com.

  2. Quando o usuário clica em um botão na janela pop-up (mostrando www.someotherwebsite.com ) Eu quero essa janela para perto e têm um valor retornado.

  3. Eu quero o valor retornado a partir da janela pop-up para ser colocado (em uma div, ou em uma chamada de javascript, ou em algum lugar acessível, como o preenchimento de um campo de formulário) em www.website1.com.

Espero que sentido marcas. Eu preciso usar apenas HTML e Javascript, sem bibliotecas externas. Ele também deve trabalhar em navegadores atuais (ou seja, não ser uma coisa HTML5).

Agradecemos antecipadamente a sua ajuda.

Foi útil?

Solução

Bem, se você usar um iframe em sua janela pop-up [neste dia de idade gostaria de evitar janelas pop-up como uma praga devido ao pop up bloqueadores]

Com um iframe você pode fazer chamadas entre domínios

Por que você não apenas desenvolver um webservice de A para B e chamá-lo de A? Parece muito mais limpo do que encontrar pequenas fissuras em navegadores para contornar a segurança.

Outras dicas

Você pode postar o valor no contexto de www.someotherwebsite.com volta para uma página especial sobre www.website1.com. Agora você está de volta para o domínio original, que a página leva o valor GET e escreve-o para fora em algum JavaScript. O JavaScript em seguida, atualiza a algum lugar valor no uso opener.document.getElementById janela abridor, ou chama uma função na abertura com algo como opener.document.doSomething (val); que lida com a resposta.

É repleta de erros potenciais (e se o usuário abrir duas cópias da janela? Ou fecha o site original?) E falhas de segurança em potencial, e os navegadores têm uma tendência a reagir mal se você tentar fazer coisas para janelas que don 't existem ou estão em domínios diferentes, mas em um ambiente conhecido ele deve funcionar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top