2012-10-22 48 views

回答

1

否。如果沒有使用跨域消息傳遞的合作域,您無法從一個域到另一個域的不同框架並查看它的URL或散列標記。

您可以看到對同源限制here的描述。

如果兩個框架(在不同的域上)合作,您可以使用window.postMessage()在現代瀏覽器中進行通信。

+0

感謝您的info.I只是想用它來破解瀏覽器的歷史,但因爲他們在不同的領域,我得到了權限被拒絕。你有沒有辦法使用子框架來破解瀏覽器歷史記錄?謝謝。 – gerboy

+0

@gerboy - 如果兩個域合作(在兩個框架中編碼以完成任務),則可以這樣做。但是,如果您不控制其他框架中的代碼,則無法執行此操作。這就是同源限制的原因 - 防止您的代碼與其他域的頁面混淆。一個瀏覽器插件可以做到這一點(它不受同源限制的限制),但是插件必須在它可以工作之前安裝。 – jfriend00

+0

謝謝jfriend00。我得到了另一個可能的解決方案,但我想先諮詢一下。 「history.pushState()」你認爲它會解決「Permission Denied」還是同一個起源限制?謝謝:) – gerboy