Это - плохая практика для встраивания JavaScript в тело HTML?

Команда, что я продолжаю работать, выработала привычку использования <script> теги в случайных местах в теле наших страниц HTML. Например:

<html>
    <head></head>
    <body>
        <div id="some-div">
            <script type="text/javascript">//some javascript here</script>
        </div>
    </body>
</html>

Я не видел это прежде. Это, кажется, работает в нескольких браузерах, которые я протестировал. Но насколько я знаю, это не допустимо для помещения тегов script в места как это.

Я неправ? Как плохо это, что мы помещаем теги script в тегах Div как это? Есть ли какие-либо проблемы совместимости браузера, о которых я должен знать?

83
задан Kara 7 February 2014 в 23:49
поделиться

15 ответов

Это совершенно верно.

Вы бы не хотели помещать большие блоки кода, смешанные в разметке (лучше использовать внешние сценарии), но это может быть полезно для:

  • добавления дополнительной информации о привязке для прогрессивного улучшения (где это данные трудно вписать в имя класса или другой подход к сокрытию расширенной информации в атрибутах); или

  • , где необходимо как можно быстрее запустить улучшение по сценарию (вместо того, чтобы ждать загрузки окна / готовности документа). Примером этого может служить автофокус, который может раздражать, если срабатывать слишком поздно.

Возможно, вы думаете об элементах