zoukankan      html  css  js  c++  java
  • 将函数传给webworker

    var zWorker = function (func,cb){
    var node = document.createElement('script'),workerId='worker' + Date.now()
    node.setAttribute('type',"javascript/worker")    
    node.setAttribute('id',workerId)
    //node.innerHTML = 'function fun1(str){alert(str)}'
    //node.innerHTML = 'self.onmessage=function(e){console.log(e.data);self.postMessage("msg from worker");}'
    node.innerHTML = 'self.onmessage=' + func + '; self.onmessage=function(e){console.log(e.data);self.postMessage("msg from worker");}'
    document.body.append(node)
    var blob = new Blob([ document.querySelector('#' + workerId ).textContent ], { type: "text/javascript" })
    var worker = new Worker(window.URL.createObjectURL(blob));
    worker.onmessage = function(e) {
                  //console.log("Received: " + e.data);
    cb && cb(e.data)
            }
    return worker
    }
    var workerInst = zWorker(function(str){console.log(str)},function(str){alert(str)})
    workerInst.postMessage('hello')
  • 相关阅读:
    SpringMVC—概述
    Spring—切点表达式
    Spring—Ioc
    Spring—spring概述
    MyBtis—原理及初始化
    mysql数据增删查授权
    mysql完整性约束
    mysql枚举类型与集合类型
    mysql字符类型
    mysql日期类型
  • 原文地址:https://www.cnblogs.com/zyip/p/6208418.html
Copyright © 2011-2022 走看看