Web Workers

来源:互联网 发布:java并发编程 豆瓣 编辑:程序博客网 时间:2024/05/16 11:20

个人原创,欢迎转载,转载请注明出处http://blog.csdn.net/bud_icelf       QQ:909648986


Web Workers

 

什么是Web Workers

web worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。

 

例子1 时间实现

<!DOCTYPE HTML><html><head>    <meta charset="gbk"></head><body>    <p id="info"></p>    <script>        if(typeof(Worker)!=="undefined"){            var worker=new Worker("time.js");            worker.onmessage=function(event){                document.getElementById("info").innerHTML=event.data;            };        }else{            document.getElementById("info").innerHTML="你的浏览器不支持Web Workers";        }    </script></body></html>


创建web worker文件  time.js

function time(){    setTimeout("time()",500);    postMessage(new Date());}time();


 

if(typeof(Worker)!=="undefined")
判断浏览器是否支持web worker

 

 

var worker=new Worker("time.js");
创建Worker对象,参数一为web worker文件路径

 

 

worker.onmessage=function(event){
         document.getElementById("info").innerHTML=event.data;

};

当有消息传递时(onmessage),执行监听器中的代码,  event.data是传递的信息内容。

 

 

 postMessage(new Date());
该方法向所对应的Worker对象传递信息。参数一为传递的内容。

原创粉丝点击