頁面開發之res://ieframe.dll/http_404.htm#問題處理

問題環境:頁面首頁,嵌入了多個portal頁面,單獨請求獲取各自的信息以列表展示

問題描述:點擊列表,新窗口打開頁面後,頁面提示404,且地址url中可明顯看到多處了res://ieframe.dll/http_404.htm#

 

問題原因:從圖中可看到,通過點擊待辦公文的記錄,我們都會採用以下方式:

/**
 * window.open
 */
function openWindow(url, name){
    url = $('base').attr('href') + url;
    var fulls = "left=0,screenX=0,top=0,screenY=0,toolbar=no,scrollbars=yes, resizable=yes";    //定義彈出窗口的參數
    if (window.screen) {
         var ah = screen.availHeight - 70;
         var aw = screen.availWidth - 10;
         fulls += ",height=" + ah;
         fulls += ",innerHeight=" + ah;
         fulls += ",width=" + aw;
         fulls += ",innerWidth=" + aw;
         fulls += ",resizable";
     } else {
         fulls += ",resizable"; // 對於不支持screen屬性的瀏覽器,可以手工進行最大化。 manually
     }
    window.open (url, name,fulls);
}

然後首頁有多個單獨的頁面時,爲了優化代碼,我們都會將該方法定義到父頁面上,而各個單獨的portal頁面作爲子頁面去調用。如果我們在父頁面定義了全局方法,然後又在子頁面中再去定義該方法,(不太清楚是不是子頁面作爲嵌入式頁面,當我們在其中一個子頁面也寫入該方法,然後去另一個頁面去調用<就近原則>它時,會提示404找不到頁面)

解決方法:檢查各個頁面,有沒有多餘的代碼,避免頁面調用錯誤位置的方法。

解決結果: