Есть ли проблемы с производительностью при наличии большого количества тегов сценария в вашем html? - PullRequest
8 голосов
/ 09 февраля 2010

Есть ли проблемы с наличием большого количества (скажем, 50) тегов сценария в HTML-файле. Это вызывает какие-либо проблемы с производительностью во время рендеринга страниц?

У меня есть раздел на моей странице, который тянет точку геолокации и помещает ее в массив для использования на карте Google. Я мог бы создать отдельный запрос только для точек геолокации, но я считаю, что это будет более эффективно, если я получу его, когда запрашивается другой контент.

<script type="text/javascript">points[{count}] = [{job_latitude},{job_longitude},'{title}'];</script>

Ответы [ 2 ]

8 голосов
/ 09 февраля 2010

Когда браузер обнаруживает элементы SCRIPT, он прекращает синтаксический анализ и рендеринг HTML и начинает анализировать и интерпретировать его содержимое. Это связано с тем, что элементы кода SCRIPT могут изменять уже проанализированное дерево DOM.

По этой причине рекомендуется поместить SCRIPT s внизу документа , чтобы весь текст документа уже был проанализирован.

Так что я бы предпочел запросить географическое местоположение в целом (возможно, вы можете собрать их на стороне сервера и распечатать в конце). Или, если вы не можете или не хотите этого делать, добавьте атрибут defer к вашим элементам SCRIPT, чтобы запретить синтаксическому анализатору ожидать сценария.

2 голосов
/ 09 февраля 2010

LABjs - это легкий файл .js (лицензия MIT), который позволит вашему сценарию загружаться параллельно с разметкой - он может значительно сократить время загрузки страницы - но будьте осторожны при использовании функции wait () для обеспечения соблюдения зависимостей.

...