大家好。
这两天做一个JS,想实现在显示HTML正文前弹出警告"1",
结果发现同样的程序,在IE6上可以正常实现,IE7/8上就会报script error
困扰了好几天,期望各位解答。
程序如下:<HTML><HEAD>
<SCRIPT type=text/javascript>function onLoadLogin()
{
 alert("1");
}window.onload=onLoadLogin();</SCRIPT></HEAD><BODY>
test
</BODY></HTML>

解决方案 »

  1.   

    <HTML> <HEAD>
    </HEAD><BODY>
    test
    <SCRIPT   type=text/javascript>function   onLoadLogin()
    {
      alert( "1 ");
    }window.onload=onLoadLogin();</SCRIPT>
    </BODY></HTML>
    试试把<script>放在</body>前面 ,不行的话,在留言
      

  2.   

    window.onload=onLoadLogin(); 
    改成 window.onload=onLoadLogin; 
      

  3.   


    <HTML> <HEAD> 
    <SCRIPT   type=text/javascript> function   onLoadLogin() 

      alert( "1 "); 
    } window.onload=onLoadLogin; //不用括号</SCRIPT> </HEAD> <BODY> 
    test 
    </BODY> </HTML> 
      

  4.   

    引用 2 楼 sunnylost 的回复:
    window.onload=onLoadLogin();
    改成 window.onload=onLoadLogin;
      

  5.   

    刚才试了一下,IE8上还是会有error。。
      

  6.   


    这个方法我也试过,确实IE7,8不会报错了,但是
    显示顺序就变成先显示"test"(HTML正文),然后再弹出警告"1"了。。
    而我希望能先显示警告阿
      

  7.   

    onload 是你的页面内容加载完成之后,才执行。这个时候你就不应该用onload  了
      

  8.   

    用jquery试试:
    $(function(){//something to do});
      

  9.   

     $(document).ready(
                            function()
                            {
                                alert("jquery load!");
                            }
        );
      

  10.   

    刚刚在Dean Edward博客上翻出一点东西if (document.readyState != "interactive"){
       onLoadLogin();
    }
      

  11.   

    测试document.readyState 是否为"loading"也可以~
      

  12.   


    这个方法刚才试了一下,确实可以!谢谢你的指点!
    LY0223的方法没试,因为不会用jquery.T_T.
    残念...