1
我們每天都會在幾個客戶端上發生「訪問被拒絕」javascript錯誤(每當發生未處理的js錯誤時,我們都會通過webservice調用通知) 。錯誤發生在.04%的頁面請求上,所以它不是常見的,也不是我們可以重現的。嘗試打開iframe來編寫內容時,定期「訪問被拒絕」
在IE6,IE7和IE8上觀察到錯誤,因此它似乎是一個IE問題。
這裏是簡化的標記和關聯的JavaScript,導致該問題:
標記
<iframe id="frm" src="javascript:false;" />
JS
var frm = document.getElementById("frm");
var frmDoc = frm.contentWindow.document;
frmDoc.open();
frmDoc.write('some html');
「訪問被拒絕」 當我們調用frmDoc發生錯誤。打開()。
在網上尋找可能導致這種情況的線索之後,我唯一的希望是有人可能會對可能發生的事情有一個有效的假設。也許這是一個IE錯誤,但如果有辦法解決它,我們想追求它。
歡迎所有的狂野想法。
不幸的是這會導致IE6通過SSL彈出一個消息框,指出「此頁包含安全和不安全的項目。是否要顯示不安全的內容」。我應該指出,遇到「拒絕訪問」的用戶通常只會看到一次,然後隨後就會消失。 – jbalinski 2010-11-04 19:19:58
因此,創建一個簡單的html文檔作爲dummie並將其設置爲iframe的src – 2010-11-04 23:52:46
回到這一個。我們最終放棄並發現使用一個簡單的html文檔作爲假人仍然遭受同樣的問題。它似乎有一些IE設置,即使iframe和文檔在完全相同的域上,也不允許發生任何交叉iframe通信。我猜測這應該是一個Windows政策的地方,因爲我找不到任何可以解釋這個問題的瀏覽器選項。 – jbalinski 2011-09-28 19:24:45