貌似使用一个计时器就可以了。
如:
window.setTimeout(fn1,1000);
window.setTimeout(fn2,800);
这样,分别在1秒和.8秒后是不是可以同时执行呢?

解决方案 »

  1.   

    似的模拟多线程可以有多种做法使用setInterval,setTimeout,marquee,和图片等等,只是给大家提供
    一种选择
      

  2.   

    觉得还是用setInterval/setTimeout来的好点
      

  3.   

    对于这一点,我没有什么异议,在js中是不可能来完全实现多线程的,我们所能做的仅仅
    是尽可能的利用浏览器的多个线程来模拟,不同浏览器出于性能的考虑对html对象和js
    的解释会有不同的线程策略,所以这个做法在ie下实现不了,而利用image的onload来模拟
    在firefox下也无法实现
      

  4.   

    js只有单线程,这个模拟只是把异步硬说成是多线程
    感觉这个没什么意义像这里
    setTimeout("alert(1)",1000);
    alert(2);
    如果能实现在alert(2)之后不按确定也能弹出alert(1)那才能叫实现或模拟了多线程
      

  5.   

    就是,JavaScript没多线程,所谓的模拟多线程,第个任务时间长一点就看出来
      

  6.   

    FF3不行鳥~~`````參見:http://www.v-ec.com/jslib/【alert不会打断的脚本】部分 
      

  7.   

    整理了一下添加到了JsLib中去了:http://www.v-ec.com/jslib/
    【alert不会打断的脚本】部分 ,第二個標簽:
    <script type="text/javascript">
    function x(src){
     var img = new Image;
     var c = 1;
     img.onerror = function(){test();}
     function test(){document.getElementById("Thread").innerHTML = ++c;img.src=src;}
     img.src = src;
    }x(Math.random);
    </script><span id="Thread">0</span>
    <input type=button value="alert" onclick="alert(window);">