在客户端使用Javascript实现较长时间运算的时候,我希望显示一个<div>请等待</div>用来提示用户等待,但是却无法显示,因为IE没有时间刷屏,可能等到运行结果出现了,等待的画面还没有出现,
请问是否有办法实现或类似 Sleep 的函数 让进程进入短暂等待 并可以显示 此 DIV

解决方案 »

  1.   

    iTimerID = window.setTimeout(vCode, iMilliSeconds [, sLanguage])
      

  2.   

    setTimeout
    参考
    http://www.sonofsofaman.com/hobbies/code/settimeout.asp
      

  3.   

    为什么要这样做,在开始计算前显示这个div 计算完成后隐藏不是很好吗?
      

  4.   

    楼上的能不能把:iTimerID = window.setTimeout(vCode, iMilliSeconds [, sLanguage])
    说详细点,我也想学习一下呀。
      

  5.   

    iTimerID = window.setTimeout(vCode, iMilliSeconds [, sLanguage])
    这样子是实现不了了,因为进程繁忙,可能在指定的时间根本运行不了。我就是在计算前显示 <div> 调用了 div.style.display = "";  但因为马上进入
    复杂的计算,进程没有时间显示 <div>
      

  6.   

    http://dotnet.aspx.cc/ShowDetail.aspx?id=794566B9-5EA2-4782-2D42-E133F3C7BA74
      

  7.   

    我就是在计算前显示 <div> 调用了 div.style.display = "";  但因为马上进入
    复杂的计算,进程没有时间显示 <div>-------------------------------------
    那sleep 一段时间呢?
      

  8.   

    问题是没有办法实现 Sleep
    比如之前写C/S程序, 显示进度条内容,需要调用Sleep,用VB需要调用 Doevents让进程
    刷屏显示最新的进度,如果不使用Sleep或Doevents,用户就不能看到就新的进度,
    这里同理,
      

  9.   

    window.setInterval("someFunction()", 5000);
      

  10.   

    window.setInterval("someFunction()", 5000);
    这样子可是可以,但是却显得主次不分了,
    而且要修改太多的函数,因为我有很多函数都需要用到这个
    实在不行就改用 Popup 算了
      

  11.   

    1、嵌入一个iframe,其中显示等待的信息,设置style.visibility="hidden"
    2、开始计算时,修改style.visibility="visible"
    3、计算结束时,修改style.visibility="hidden"你看这样可以吗?
      

  12.   

    哈哈,楼上的这个跟我的其实是一样的,只是你用的是iframe,我用的是div而已
      

  13.   

    这个问题我曾经也遇到过,试过用style.visibility="visible"  or "hidden"的方法,但没成功,由于客户端只有一个线程在工作,它只能做一件事情,除非能有另外一个线程介入,关注!