ie8支持多线程的脑洞

纯属开脑洞笑料,不要当真

该脑洞是利用localStorage api和StorageEvent建立的,支持最大5m的信息传输233333

// main.html

var PageWorkerManager = {
  num: 4,
  pools: [],
  init: function () {
    for (var i = 0, len = this.num; i < len, i++) {
      window.open('MyWorkerPage.html?id=' + i, '_blank');
      this.pools.push({
        id: i,
        connect: false
      })
    }
    window.addEventListener('storage', this.handler.bind(this), false)
  },
  handler: function (evt) {
    this['on' + evt.key](evt.newValue, evt.oldValue);
  },
  oninited: function (id) {
    this.pools[id].connect = true
  },
  onclose: function (id) {
    this.pools[id].connect = false
  },
  postMessage: function (event, msg) {
    localStorage.setItem(event, msg)
  }
}

// MyWorkerPage.html
var PageWorker = {
  id: parseInt(this.getParams('id'), 10),
  init: function () {
    localStorage.setItem('inited', this.id)
    window.addEventListener('storage', this.handler.bind(this), false)
    window.addEventListener('beforeunload', this.beforeunload.bind(this), false)
  },
  handler: function (evt) {
    this['on' + evt.key](evt.newValue, evt.oldValue);
  },
  beforeunload: function () {
    localStorage.setItem('close', this.id)
  },
  postMessage: function (event, msg) {
    localStorage.setItem(event, msg)
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值