日期:2014-05-16  浏览次数:20361 次

在框架页面未加载完成前有没有办法让js停止执行?
我想在页面加载完成之后才跳出警告框,用document.readyState== 'complete '和setTimeOut来判断框架页面是否加载完成。但是没效果。。。我又写了个递归来实现,却是内存溢出。各位有谁知道该怎么办?


var   tb   =   document.all.tb_upfile;
    if(tb.rows.length   >   0)
    {
        var   count   =   tb.rows.length;
       
        for(var   i=0;i <   count;i++)
        {
              var   tmpIf   =   document.frames[ "if_upfile "   +   i];
              tmpIf.document.form1.submit();
             
                var   re   =   getFileCode(i);
             
        }


//递归调用获取上传文件编码
function   getFileCode(i)
{    
        var   tmpIf   =   document.frames[ "if_upfile "   +   i];
       
      if(tmpIf.document.readyState== 'complete ')
      {
          alert(tmpIf.document.all.txb_fileCode.value);
      }
      else
      {
          getFileCode(i);
      }
}

------解决方案--------------------
<iframe src= "http://www.baidu.com " name= "iframe1 ">
</iframe>
<script language=javascript>
var obj=document.getElementById( "iframe1 ")
obj.onreadystatechange=function()
{
if(obj.readyState== "complete ")
{
alert( "在这里写代码 ")
}

}
</script>