Этот вопрос - это просто очистить некоторые вещи. Некоторые вещи, подобные этому, были заданы раньше, и это сводит их все к одному вопросу: где должен идти JavaScript в документе HTML или, что более важно, имеет ли это значение? Итак, одна из вещей, о которых я прошу, делает
<head>
<script type="text/javascript">
alert("Hello world!");
</script>
</head>
вообще отличаются (с точки зрения функциональности) от
<body>
<!-- Code goes here -->
<script type="text/javascript">
alert("Hello world!");
</script>
</body>
Что еще более важно, я хочу сосредоточиться на JS, который каким-либо образом изменяет или использует элементы из DOM. Поэтому я знаю, что если вы помещаете что-то вроде document.getElementById("test").innerHTML = "Hello world!"
до <element id="test"></element>
в свое тело, то оно не будет работать, поскольку тело загружается сверху вниз, сначала загружая загрузку JS, а затем пытается манипулировать элемент, который еще не существует. Поэтому он должен, как и выше, либо перейти в <head>
, либо непосредственно перед тегом </body>
. Вопрос в том, что, помимо организации и сортировки, имеет значение, какой из них выбран, и если да, то каким образом?
Конечно, есть и третий метод - путь jQuery:
$(document).ready(function(){ /*Code goes here*/ });
Таким образом, не имеет значения, где в теле вы размещаете код, поскольку он будет выполняться только при загрузке. Вопрос здесь в том, стоит ли импортировать огромную библиотеку JS только для использования метода, который может быть заменен точным размещением ваших скриптов? Я просто хотел бы немного разобраться здесь, если вы хотите ответить, вперед! Резюме: где должны быть разные типы скриптов - голова или тело, и/или это имеет значение? Действительно ли jQuery стоит только для готового события?