HackTimerWorker.js 856 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. var fakeIdToId = {};
  2. onmessage = function (event) {
  3. var data = event.data,
  4. name = data.name,
  5. fakeId = data.fakeId,
  6. time;
  7. if(data.hasOwnProperty('time')) {
  8. time = data.time;
  9. }
  10. switch (name) {
  11. case 'setInterval':
  12. fakeIdToId[fakeId] = setInterval(function () {
  13. postMessage({fakeId: fakeId});
  14. }, time);
  15. break;
  16. case 'clearInterval':
  17. if (fakeIdToId.hasOwnProperty (fakeId)) {
  18. clearInterval(fakeIdToId[fakeId]);
  19. delete fakeIdToId[fakeId];
  20. }
  21. break;
  22. case 'setTimeout':
  23. fakeIdToId[fakeId] = setTimeout(function () {
  24. postMessage({fakeId: fakeId});
  25. if (fakeIdToId.hasOwnProperty (fakeId)) {
  26. delete fakeIdToId[fakeId];
  27. }
  28. }, time);
  29. break;
  30. case 'clearTimeout':
  31. if (fakeIdToId.hasOwnProperty (fakeId)) {
  32. clearTimeout(fakeIdToId[fakeId]);
  33. delete fakeIdToId[fakeId];
  34. }
  35. break;
  36. }
  37. }