页面开发之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找不到页面)

解决方法:检查各个页面,有没有多余的代码,避免页面调用错误位置的方法。

解决结果: