2012-11-19 155 views
0

我正在編寫一個通過iframe嵌入其他頁面(在其他域上)的小部件。點擊widget/iframe上的任何地方都應該彈出一個對話框。該對話框不適合iframe的尺寸。在iframe上點擊打開對話框

  • 我不能從部件/ iframe中觸發對話框,因爲它會通過iframe的尺寸會被切去。

  • 小部件的用戶還包含來自我網站的JS。但是我不能聽iframe上的onclick事件(在主機頁面上),因爲它們不是iframe上的任何onclick事件。

什麼是解決這個問題的好方法,它可以在所有現代瀏覽器中可靠地工作?

回答

1

查看這些PostMessage插件1/2,它們允許您進行通信,即在另一個域上的iFrame和父頁面之間傳遞消息。

這意味着您可以聽取對iFrame的點擊,然後發送消息給父母。當父母收到該消息時,它可以顯示一個對話框

+0

好的,我來看看。我想知道是否有一個更簡單的方法來做到這一點。 –

+0

由於它是跨域的事實,PostMessage是您最好的選擇。 在框架和父母之間進行通信的那些網站上有一些很好的例子。希望這會讓你走 – SlashmanX

+0

研究後,PostMessage似乎是要走的路。謝謝! –

相關問題