Как определить, какой javascript можно поместить внизу, а какой должен быть в <head>? - PullRequest
1 голос
/ 08 января 2010

Мы можем разместить JavaScript тремя способами?

  1. как внешний файл
  2. в <head>
  3. в теле <body>

все методы действительны для W3C?

Итак, как судить о том, где JavaScript должен быть размещен внизу или который должен быть в <head> или в <body>?

  1. Я видел JavaScript на многих сайтах
  2. in <head>,
  3. как внешний js,
  4. как раз перед </body> и
  5. некоторое время где-нибудь в <body>....<body> например: перед любым другим XHTML тег / код, который будет влиять с этим кодом JavaScript.

Обновление: Я видел, что в основном люди используют код Google Analytics в качестве встроенного JavaScript внизу?

Ответы [ 5 ]

6 голосов
/ 08 января 2010

В моем коде я придерживаюсь следующих правил в отношении организации JS:

  1. Любой JS, который не чувствителен ко времени и / или запускается после загрузки документа, помещается во внешний файл js и включается в head
  2. Любой JS, который должен запускаться как можно скорее, помещается в DOM, где это необходимо (например, если вы хотите, чтобы какой-то код запускался, как только необходимые элементы загружены, поместите код непосредственно под последним зависимым элементом)
  3. Любые внешние библиотеки отслеживания, такие как Nielsen / Google, идут прямо внизу перед закрывающим тегом body
1 голос
/ 08 января 2010

В большинстве случаев Javascript должен быть внешним файлом, чтобы разрешить кэширование и избежать повторной загрузки одного и того же 100-строчного сценария при каждой загрузке страницы. (С другой стороны, если вы ожидаете, что пользователи когда-либо увидят его только один раз, это встроенный сценарий.)

Независимо от того, идет ли речь о голове или теле, это действительно ваш выбор, хотя Yahoo рекомендует нижнюю часть тела для производительности .

0 голосов
/ 08 января 2010

Обычно я помещаю столько, сколько могу, во внешние файлы js. Основным исключением является информация, загружаемая на страницу сервера при загрузке. Я склонен помещать все, что не относится к одной странице, в js-файл библиотеки / сайта. Если вам не нужны встроенные скрипты (например, document.write), то лучше передвинуть свои скрипты вниз до тега закрывающего тела (см. Исследование YSlow и yahoo о причинах этого).

  1. Если страница / скрипт не НЕОБХОДИМО document.write, поместите его внизу.
  2. Если это так НЕОБХОДИМО document.write оценить почему.
  3. Если это может быть легко выведено (в отдельный .js), сделайте это.
  4. Если это не относится только к одной странице, поместите ее в файл .js, который используется несколькими страницами.
  5. По возможности объединяйте пользовательские сценарии сайта в один .js.
  6. минимизировать / уменьшить указанный .js и использовать HTTP-сжатие, где это возможно.

Основные причины этого:

  1. Отделяйте разметку от сценариев.
  2. Отделяйте разметку от сценариев.
  3. Отделите вашу разметку от ваших скриптов (насколько это возможно, так же, как и для CSS)
  4. Создание сценариев многократного использования для сокращения запросов к серверу.
  5. Сокращение запросов к серверу
  6. Сократите время на передачу файлов.
0 голосов
/ 08 января 2010

Если вас интересует время загрузки страницы, эта статья Google о минимизации размера полезной нагрузки может помочь. Я связался с разделом, касающимся отсрочки загрузки JavaScript. Не совсем то, что вы просили, но может пригодиться.

На самом деле, http://code.google.com/speed/ просто удобно!

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