Есть две возможности для действительно ненавязчивых скриптов:
- включая внешний файл скрипта с помощью тега скрипта в разделе head
- включая внешний файл сценария через тег сценария внизу тела (до
</body></html>
)
Второй способ может быть быстрее, поскольку первоначальное исследование Yahoo показало, что некоторые браузеры пытаются загружать файлы сценариев, когда попадают в тег сценария, и поэтому не загружают оставшуюся часть страницы, пока не завершат работу. Однако, если у вашего скрипта есть «готовая» часть, которая должна выполняться, как только DOM будет готов, вам, возможно, потребуется иметь ее в голове. Еще одна проблема - макет - если ваш скрипт собирается изменить макет страницы, вы хотите, чтобы он был загружен как можно раньше, чтобы ваша страница не тратила много времени на перерисовку перед вашими пользователями.
Если внешний сайт-скрипт находится в другом домене (например, внешние виджеты), возможно, стоит поместить его внизу, чтобы избежать задержки загрузки страницы.
И для любых проблем с производительностью выполните свои собственные тесты - то, что может быть верным в одно время, когда исследование выполнено, может измениться в зависимости от ваших локальных настроек или изменений в браузерах.