HTML5 Web Workers 使用案例
2016-06-22 10:57
531 查看
1 什么是Web Workers?
当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。web
worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何愿意做的事情:点击、选取内容等等,而此时 web worker 在后台运行。
2 使用案例
webworkers.html文件
4 参考链接
http://blog.csdn.net/liuwengai/article/details/51674274
http://www.w3school.com.cn/html5/html_5_webworkers.asp
5 扩展延伸
http://blog.teamtreehouse.com/using-web-workers-to-speed-up-your-javascript-applications
http://www.html5rocks.com/en/tutorials/workers/basics/
当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。web
worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何愿意做的事情:点击、选取内容等等,而此时 web worker 在后台运行。
2 使用案例
webworkers.html文件
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <!-- web worker是运行在后台的javascript,不会影响页面的性能 --> <p>计数:<output id="result"></output></p> <button onclick="startWorker()">开始worker</button> <button onclick="endWorker()">停止worker</button> <br><br> <script type="text/javascript"> var w; function startWorker(){ if(typeof(Worker)!="undefined"){//浏览器支持web worker if(typeof(w)=="undefined"){//w是未定义的,还没有开始计数 w = new Worker("webworker.js");//创建一个Worker对象,利用Worker的构造函数 } //onmessage是Worker对象的properties w.onmessage = function(event){//事件处理函数,用来处理后端的web worker传递过来的消息 document.getElementById("result").innerHTML=event.data; }; }else{ document.getElementById("result").innerHTML="sorry,your browser does not support web workers"; } } function endWorker(){ w.terminate();//利用Worker对象的terminated方法,终止 w=undefined; } </script> </body> </html>在后台运行的web worker js文件,webworker.js
var i = 0; function timeCount(){ i = i + 1; postMessage(i);//postMessage是Worker对象的方法,用于向html页面回传一段消息 setTimeout("timeCount()",500);//定时任务 } timeCount();//加1计数,每500毫秒调用一次3 效果截图
4 参考链接
http://blog.csdn.net/liuwengai/article/details/51674274
http://www.w3school.com.cn/html5/html_5_webworkers.asp
5 扩展延伸
http://blog.teamtreehouse.com/using-web-workers-to-speed-up-your-javascript-applications
http://www.html5rocks.com/en/tutorials/workers/basics/
相关文章推荐
- 基于HTML5 的人脸识别活体认证的实现方法
- HTML5 离线缓存详解(转)
- HTML5 离线缓存
- 使用h5的history改善ajax列表请求体验
- HTML5之初体验
- 移动混合开发之HTML5在移动开发中的准则
- 为什么我们要使用html5
- HTML5快速入门(三)—— 标签综合运用
- HTML5快速入门(三)—— 标签综合运用
- HTML5兼容IE方法
- HTML5拖放(drag和drop)
- HTML5自学_CSS(三)
- 《HTML5移动开发指南》——笔记7(Media Queries 移动设备样式)
- 基于 CSS3 Media Queries 的 HTML5 应用
- htm5文件上传预览
- h5手机网页的meta标签
- swiper的基础使用(十)
- 11个基础的HTML5动画工具
- html5新属性——placeholder
- 使用原生HTML5上传文件