想利用firefox的extension做点东西,主要想完成页面的转换,就是说当一个页面加载完成后,自动加载另一个页面。
其中,用到window.onload事件,可是发现在前一个页面没有加载完之前就触发了onload事件,请高手赐教!!!
部分代码:
    function main(){
      var doc = window.getBrowser().selectedBrowser.contentDocument;
      doc.location.href = url;
      window.onload = link(doc);
    } 
    function link(doc){
      doc.location.href = urll;
    }
初学,所有会有很多地方不对,请大家指正!!!
      

解决方案 »

  1.   

    什么时候调用的main?页面加载过程中??
      

  2.   

    试试:  window.onload=function(doc){ link(doc); };
      

  3.   

    试了,貌似没有触发onload事件
      

  4.   

        function main(){
          var doc = window.getBrowser().selectedBrowser.contentDocument;
          doc.location.href = url;
          window.onload = function(){link(doc);};
        }
        function link(doc){
          doc.location.href = urll;
        } 
      

  5.   

    ...还是不可以,貌似还是没有触发事件。
    各位js高手,我想请教下,只有通过onload事件的方式才能得知页面加载完毕吗?
    还有其他的方式吗?我是要网页多有内容加载完成。先谢谢大家了!!
      

  6.   

    main 已经是onload结束之后调用的,在它里面怎么执行onload
      

  7.   

    我是在空页面的情况下激发main()的。
    doc.location.href = url; 
    转向我要的第一个页面,onload就是针对这个页面的。
    可是问题就在于,onload事件可以被激发,但是并不是在第一个页面完全打开后才激发的,
    请各位指点。
      

  8.   

    --trywindow.onload = new Function('link('+doc+')'); 
      

  9.   

    你不用onload,你把
    function link(doc){ 
          doc.location.href = urll; 
        } 
    放到</html>后面调用就像下面这样
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>test</title>
    <script>
    alert()</script>
    </head><body style=" padding:0px"></body>
    </html><script>
    alert()</script>
      

  10.   

    我明白您的意思,可是我做的是firefox的extension,如何把您的这段代码加进去呢?请指教..