博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Html5 Web Workers
阅读量:5840 次
发布时间:2019-06-18

本文共 904 字,大约阅读时间需要 3 分钟。

当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。

Web Workers 是运行在后台的 JavaScript线程,独立于其他脚本,不会影响到前端其他任何操作或体验。

主要过程包括:

1、创建Worker对象;
2、将参数值传递通过Worker对象的postMessage方法传递传递给后台线程脚本;
3、后台线程脚本处理后将结果通过postMessage方法返回;
4、原脚本通过监听onMessage事件获取后台线程传过来的值。

实例代码如下:

html页面:

1  2  3      4         
5 无标题文档 6 8 9 10 输入数值:11 12

bb.js代码:

1 window.onload = function() { 2     var worker = new Worker("sumCalculate.js"); 3     console.log(worker); 4     var bbDom = document.getElementById("button"); 5      6     bbDom.addEventListener("click", f); 7      8     function f(){ 9         var num = parseInt(document.getElementById("num").value);10         worker.postMessage(num);11     }12 13     worker.onmessage = function(event) {14         alert(event.data);15     }16 }

后台线程sumCalculate.js代码:

1 onmessage = function(event) {2     var result = event.data * 10;3     postMessage(result);4 }

 

转载地址:http://fvvcx.baihongyu.com/

你可能感兴趣的文章
Ubuntu安装词典
查看>>
KVM虚拟机在线添加网卡
查看>>
Spring解析
查看>>
支付宝签约教程及注意事项
查看>>
Linux Glibc溢出漏洞凶猛来袭 可让***者获取操作系统的控制权限
查看>>
设计模式之原则
查看>>
Maven修改全局和局部JDK版本
查看>>
设计模式——组合模式(Composite Pattern)
查看>>
eclipse maven Dynamic Web Module to 2.5
查看>>
java设计模式之——代理模式
查看>>
Java多线程之JUC原子类AtomicLong
查看>>
一个简单的弹性返回顶部JS代码实现介绍
查看>>
自动化代码上线
查看>>
[shell] if else以及大于、小于、等于逻辑表达式
查看>>
BGP Improvement Methods
查看>>
TCP/IP四层模型和OSI七层模型对应表
查看>>
AD子域的部署并配置DNS委派的几种方法
查看>>
shell脚本 fdisk 分区
查看>>
Python标准库--Scope
查看>>
CentOS启动流程
查看>>