我們的網站給出了一個要安裝在頁面中的小部件(一段寫入iframe元素的JavaScript,裏面呈現的是事物,您會看到rss,圖像和其他內容)。Javascript跨域問題
我需要,在用戶做了一些事情之後,將頁面(小部件所在的位置)重定向到另一個位置,但由於小部件生成的頁面和iframe位於不同位置,因此使用top.document.location
是禁止的,並且使用彈出式窗口攔截器通常會阻止window.open
。
我該怎麼辦?
我們的網站給出了一個要安裝在頁面中的小部件(一段寫入iframe元素的JavaScript,裏面呈現的是事物,您會看到rss,圖像和其他內容)。Javascript跨域問題
我需要,在用戶做了一些事情之後,將頁面(小部件所在的位置)重定向到另一個位置,但由於小部件生成的頁面和iframe位於不同位置,因此使用top.document.location
是禁止的,並且使用彈出式窗口攔截器通常會阻止window.open
。
我該怎麼辦?
嘗試:
window.location.href = "url";
雖然從top
窗口閱讀性質是不允許的,他們中的一些是開放的寫 - 而這些都是location
之一。
根本就
top.location = "http://foo/bar";
,它會重定向就好了。
感謝您的更正。 [它肯定看起來像你是對的](http://stackoverflow.com/questions/952242/),但我無法找到任何可靠的文件只寫屬性(例如MDC,W3C,Quirksmode,甚至維基百科)。你有關於這個的或多或少的官方文檔的鏈接? – 2011-03-11 14:26:42
@Matt,這不是W3規範所涵蓋的內容 - 這是不同瀏覽器供應商在實施相同原產地策略(這不屬於任何規範)允許的行爲。 但是「位置」是唯一的這樣的屬性(允許導航)(除了與FF2中的frameElement和IE6-7中的window.opener相關的'錯誤')。 – 2011-03-11 15:40:35
不,內容被加載到由小部件生成的iframe中... – FlamingMoe 2011-03-08 15:55:30