2012-11-19 6 views
0

다른 도메인의 다른 페이지에 iframe을 통해 삽입되는 위젯을 작성하고 있습니다. 위젯/iframe의 아무 곳이나 클릭하면 대화 상자가 열립니다. 대화 상자가 iframe의 크기에 맞지 않습니다.iframe에서 대화 상자 열기

  • 위젯/iframe 내부에서 대화 상자를 트리거 할 수 없으므로 iframe 크기로 클리핑됩니다.

  • 위젯 사용자는 내 사이트의 JS도 포함합니다. 하지만 iframe에 대한 onclick 이벤트가 아니기 때문에 (호스트 페이지의) iframe에서 onclick 이벤트를들을 수 없습니다.

현대의 모든 브라우저에서 안정적으로 작동하는이 문제를 해결하는 좋은 방법은 무엇입니까?

답변

1

이러한 PostMessage 플러그인 1/2을 보시면 다른 도메인의 iFrame과 상위 페이지간에 메시지를 전달할 수 있습니다.

즉, iFrame을 클릭 한 다음 부모에게 메시지를 보낼 수 있습니다. 부모가 해당 메시지를 받으면 대화 상자가 표시됩니다.

+0

알았습니다. 이 작업을 수행하는 더 간단한 방법이 있는지 궁금합니다. –

+0

크로스 도메인이기 때문에 PostMessage가 최선의 방법입니다. 프레임과 부모 간의 통신을 위해 연결된 사이트에는 좋은 예가 몇 가지 있습니다. 다행히도, 그것은 당신을 가야합니다. – SlashmanX

+0

연구 후, PostMessage가 갈 길인 것 같습니다. 감사! –