Может ли рендеринг страницы выполняться одновременно с JavaScript? - PullRequest
1 голос
/ 13 сентября 2011

У меня есть переопределенный GWT DialogBox, который в качестве виджета переопределил PagingScrollTable. У меня есть что-то вроде этого в моем коде:

1) DialogBox dialog = new ...
2) dialog.center(); 
3) Window.alert("Hello"); 

В IE я вижу предупреждение после загрузки заголовка таблицы, но до загрузки содержимого таблицы (около 1000 строк). Но javascript - это однопоточный язык, так как это может быть? Может ли это быть проблема браузера или проблема моего кода?

Спасибо!

Ответы [ 2 ]

1 голос
/ 13 сентября 2011

Javascript может быть однопоточным, но браузер - нет, и рендеринг страницы не выполняется движком Javascript, поэтому нет конфликта в том, что Javascript может работать во время рендеринга страницы.на самом деле, вы можете добавить атрибут async в тег <script>, чтобы явно сказать браузеру, что делать это, хотя, к сожалению, этот атрибут еще не полностью поддерживается во всех браузерах)

0 голосов
/ 13 сентября 2011

Javascript является асинхронным (и он запускается внутри потока в браузере, поэтому он не зацикливается на загрузке страницы так, как вы думаете. После загрузки самого javascript его нужно запускать только по событиюдля запуска или того факта, что он загружен, достаточно для его запуска. '' содержимое тега обрабатывается браузером мгновенно - поэтому, если у вас есть код, который не заключен в «функцию», которую вы связываете с «выгрузить» иличто-то похожее - оно просто запускается всякий раз, когда появляется в DOM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...