今天新页面上线,很多同事报告说页面打开到一半,经常跳出无法打开Internet站点的错误,然后页面会跳转到DNS错误的页面。

      notload.jpg
        
        这个问题我以前遇到过,一直没有详细的去深究原因,只是以为是服务器关闭连接太快的原因。今天发现这个问题出的很频繁,服务器方面没有改什么,只是上传了新的页面程序而已,应该不会和服务器有关。在对页面进行分析,并搜索了一下网上,发现原来是js在document还没完全load完的时候就试图改变其值导致。

        因此对js做如下改变:

原js:

     window.settimeout("go()",500);
     function go(){
    .......
     }

改成:

var go_i=window.setInterval("go()",500);
function go(){
   if(document.readyState=="complete"){
      window.clearInterval(go2_i);
    }
    else return;
    ........
}
目的就是让他一定要在document完成后才执行那个操作