Изучаем HTML 5-Б. Лоусон, Р. Шарп - 2011 |
Страница 229 из 244 Аналогично, код внутри объекта фонового вычисления также должен полагаться на сочетание postMessage/onmessage. Однако доступ к объекту ограничен намного сильнее, чем к обычному документу:только несколько избранных API и функций могут обращаться к содержимому фонового вычисления. Единственный метод, доступный через объект фонового вычисления, — это terminate, КОТОрыЙ делает В ТОЧНОСТИ ТО, о чем говорит его название:останавливает фоновое вычисление. Вычисление прекращается, и соответствующий объект становится бесполезным. Кстати, возобновить вычисление невозможно, можно только создать новое. Что можно делать внутри фонового вычисления Внутри фонового вычисления у вас нет доступа к таким излишествам, как DOM. В действительности, для того чтобы выполнить какую-то задачу в DOM, нужно сначала подготовить данные в фоновом вычислении, а затем передать родительскому документу, чтобы он выполнил всю работу с DOM. ПРИМЕЧАНИЕ В настоящее время реализаций фоновых вычислений, которые бы поддерживали доступ к базам данных SQL для веб, не существует, однако работа в этом направлении идет. Однако внутри фонового вычисления (согласно спецификации) можно выполнять определенные манипуляции: ? передавать сообщения с помощью роs tMes sage и слушать входящие сообщения, используя onmessage; ? закрывать текущее фоновое вычисление с помощью close; ? устанавливать приемники событий; ? устанавливать объект xMLHttpRequest для запросов Ajax; ? использовать таймеры, такие как setTimeout, set Interval, и соответствующие методы сброса таймеров; ? применять все ключевые функции JavaScript: evai, isNaN, escape И Т. Д.; ? работать с объектами местоположения (href сценария фонового вычисления); ? использовать веб-сокеты (о которых мы поговорим в последнем разделе этой главы); ? работать с базами данных SQL для веб; |