Вы получите сообщение об ошибке, поскольку API для создания веб-рабочих просто не существует в IE.
например.
var worker = new Worker('my_task.js');
Вызвать ошибку, поскольку рабочий не определен.
Если вы хотите сделать функцию обнаружения, вы можете проверить первый перед созданием рабочего:
if(window.Worker !== undefined){
var worker = new Worker('my_task.js');
}
Конечно, какую бы задачу вы делегированы WebWorker не будет происходить на неподдерживаемых браузеров, что означает, что вам нужно будет запустить логику в основном (не рабочем) контексте.
Поскольку вы отправляете сообщение (и слушаете сообщения о событиях/сообщениях) с WebWorkers, если вы выполняете тот же подход к своей рабочей задаче, вы можете просто запустить его в своем основном контексте и сделать вызовы к нему таким же образом, как и если бы это был веб-сайт. Для этого вам потребуются некоторые дополнительные функции, но вы можете легко переключиться на WebWorkers, когда обнаружите, что он поддерживается в браузере.
Вы попробовали? Что случилось? – epascarello
Не пробовал, это не на том этапе; просто посмотрев, что произойдет, если я это сделаю. Ты это пробовал? – frenchie
Занимает 40 секунд, чтобы сделать демо! Или протестируйте одну из демоверсий онлайн. :) – epascarello