2010-12-06 16 views
10

我正在開發一個網頁,我們的客戶希望通過在iframe跨域)中包裝我的網頁來插入他們的網站。我不需要需要與父母進行交流或知道什麼關於iframe以外的什麼。包裝在IFrame中時的網頁限制?

我使用HTMLCSS的JavascriptWEBSERVICES

問:我如何限制的IFRAME相比,如果我的網頁是在IFRAME外運行裏面?

+0

我不確定這些限制是什麼,但是如果您的iframe內容不需要訪問父頁面,您將不會遇到任何一個。我想這個問題純粹是一種思想上的追求? :) – jrharshath 2010-12-06 08:35:15

+0

尋找相關的答案給了我很多非常具體的解決方案,以解決各種* iframe *問題。我正在尋找一個更一般的*不這樣做*,*不這樣做*,並知道*這是不可能的*當居住在* iframe *。 – Chau 2010-12-06 08:50:49

回答

13

你不是。任何在您的域的iframe中鏈接的JS將在iframe的上下文中執行。除了被塞進一個不尋常的容器之外,它應該和它獨立裝載時一樣。

如果您的需求應該改變,但是有兩種方法可以在父框架和iframe之間發送信號,如果兩個頁面都有JS寫入合作。有一些方法在URL中使用#可以被父級讀取,並且不會強制頁面重新加載,我相信它們共享window.resize事件,可以在不實際調整窗口大小的情況下手動觸發。

更新:現在有更好的方法在跨域iframe之間進行通信。當然,你仍然需要JS兩端協作,但你可以使用window.postMessage,而不是通過window.resize和URL中的哈希符號之後的數據來觸發消息。但這是一個很酷的伎倆。

1

創建鏈接時,如果要爲父窗口創建鏈接,您應該記住可能使用target-a -tag的屬性。否則,新頁面將被加載到iframe中。