onclick="window.frames['aiframe'].location.href = 'b.htm';"

解决方案 »

  1.   

    "为什么就不能实现呢?"原因:
    运行完 document.all.aiframe.src='b.htm' 后,
    它加载的速度有那么快,以致于读到 <iframe id=ciframe src=c.htm></iframe> 吗?onclick="chaiframes();chbiframes();"<script>
     function chaiframes(){
      document.all.aiframe.src='b.htm';
     } function chbiframes(){
       try{
        document.frames['aiframe'].document.all.ciframe.src='d.htm';
       }catch(e){//如果 aiframe 没有加载到 ciframe ,重试
        setTimeout("chbiframes()",1000);
       }
     }
    </script>
      

  2.   

    那就在document.all.aiframe.src页里最后加改变document.frames['aiframe'].document.all.ciframe.src的页的代码
      

  3.   

    不过呢,用 
    try{ }
    catch(e){ setTimeout); }
    的办法重试,这个思想比较有用哦:)
      

  4.   

    这个我试过了,现在行了,原来运行
    document.all.aiframe.src='b.htm'
    后没有 unload 的那么快, ciframe 那时还在:onclick="chaiframes();chbiframes();"<script>
     function chaiframes(){
      document.frames['aiframe'].document.all.ciframe.outerHTML=""; //先去掉 ciframe
      document.all.aiframe.src='b.htm';
     } function chbiframes(){
       try{
        document.frames['aiframe'].document.all.ciframe.src='d.htm';
       }catch(e){//如果 aiframe 没有加载到 ciframe ,重试
        setTimeout("chbiframes()",500);
       }
     }
    </script>