javascript中好像没有,不过你可以通过for语句来实现。

解决方案 »

  1.   

    用<meta http-equiv=refresh content="等待秒数; url=跳转的新页面">实现啊,就是把要用的脚本放在第一个页面,等待时间一到,就自动转向第二个页面。
      

  2.   

    还可以用函数setInterval("function()",time)和clearInterval().
      

  3.   

    var a=0;
    setTimeout("a=1",10000);
    while(a==0);
    ……
      

  4.   

    或是
    <script>
    ……
    setTimeout("go_on()",10000);function go_on()
    {
    ……
    }
    </script>这个不会超时
      

  5.   

    “你有点误会了,我要运行该等待的时候,下面的语句要停止执行的,你们提供的方法不能阻止下面语句的执行,还有没有方法阿,大哥们!”
    =====你把要阻止执行的语句写在另一个函数里,然后通过setTimeout来触发这个函数不就行了
      

  6.   

    好像除了showModalDialog没有其他简单的堵塞程序流程的方法了,但是变通一下也可以实现。下面是我以前写的一段代码(以前的帖子找不到了,再贴一遍呵呵):<html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>emu</title>
    </head>
    <body>
    <div id=ttText style="display:none">
    程序运行中......<BR>
    <span id=currentState></span> &nbsp; <button onclick="CANCLE = true;">停止</button><BR>
    </div>
    <button onclick="run_step1()" id=button1>开始</button>
    <span id=result></span>
    <script>
    var i=0;
    var sum =0;
    var CANCLE = false;
    var max = 2000000; //循环的终点
    var step = 9999; //步长:选择合适的步长可以在响应能力和计算速度上获得比较好的折衷。
    //(步长用9999而不是10000只是为了显示的时候好看,其实都一样)
    var timeStart = "";
    function run_step1()
    {
    if (i == 0)timeStart = new Date();
    ttText.style.display="";
    button1.style.display="none";
    setTimeout("run_step2()",1);
    CANCLE = false;
    }
    function run_step2()
    {
    if (CANCLE) 
    {
    ttText.style.display="none";
    button1.style.display="";
    button1.value="继续";
    return;
    }
    if (i == null)
    {
    //初始化
    //注意:这里不能写var,因为循环变量和结果都为全局变量。
    i = 1;
    sum = 0;
    run_step2();
    }
    else if (i<=max)
    {
    var endValue = i+step;
    if (endValue >max) endValue = max+1;
    for (j=i; j<endValue ; j++)
    sum += j;
    i+=step;
    currentState.innerText = i;
    result.innerText = "临时结果:"+sum;
    setTimeout("run_step2()",20);
    }
    else
    {
    run_step3();
    }
    }
    function run_step3()
    {
    ttText.style.display="none";
    button1.style.display="";
    button1.value="重新开始";
    result.innerText = "最终结果"+sum+" 用时:"+(new Date-timeStart)/1000+"秒"
    sum = 0;
    i = 0;
    }
    </script>
    </body>
    </html>