|
41 | 41 |
|
42 | 42 | ## Современная разметка |
43 | 43 |
|
44 | | -Тег `<script>` имеет несколько атрибутов, которые редко используются, но все ещё могут встретится в старом коде: |
| 44 | +Тег `<script>` имеет несколько атрибутов, которые редко используются, но все ещё могут встретиться в старом коде: |
45 | 45 |
|
46 | 46 | Атрибут `type`: <code><script <u>type</u>=...></code> |
47 | | -: Старый стандарт HTML, HTML4, требовал наличия этого атрибута в теге `<script>`. Обычно он имел значение `type="text/javascript"`. На текущий момент этого больше не требуется. Более того, в современном стандарте HTML смысл этого атрибута полностью изменился. Теперь он может использоваться для JavaScript-модулей. Но это продвинутая тема, и о ней мы поговорим в другой части учебника. |
| 47 | +: Старый стандарт HTML, HTML4, требовал наличия этого атрибута в теге `<script>`. Обычно он имел значение `type="text/javascript"`. На текущий момент этого больше не требуется. Более того, в современном стандарте HTML смысл этого атрибута полностью изменился. Теперь он может использоваться для JavaScript-модулей. Но это тема не для начального уровня, и о ней мы поговорим в другой части учебника. |
48 | 48 |
|
49 | 49 | Атрибут `language`: <code><script <u>language</u>=...></code> |
50 | | -: Этот атрибут должен был указывать язык, на котором написан скрипт. Но так как JavaScript является языком по умолчанию, в этом атрибуте уже нет необходимости. |
| 50 | +: Этот атрибут должен был задавать язык, на котором написан скрипт. Но так как JavaScript является языком по умолчанию, в этом атрибуте уже нет необходимости. |
51 | 51 |
|
52 | 52 | Обёртывание скрипта в HTML-комментарии. |
53 | | -: В очень древних книгах и руководствах, вы сможете найти комментарии внутри тега `<script>`, например такие: |
| 53 | +: В очень древних книгах и руководствах вы сможете найти комментарии внутри тега `<script>`, например, такие: |
54 | 54 |
|
55 | 55 | ```html no-beautify |
56 | 56 | <script type="text/javascript"><!-- |
57 | 57 | ... |
58 | 58 | //--></script> |
59 | 59 | ``` |
60 | 60 |
|
61 | | - Этот комментарий скрывал код JavaScript в старых браузерах, которые не знали как обрабатывать тег `<script>`. Поскольку все браузеры, выпущенные за последние 15 лет уже не имеют данной проблемы, такие комментарии уже не нужны. Если они есть, то это знак, что перед нами ну очень древний код. |
| 61 | + Этот комментарий скрывал код JavaScript в старых браузерах, которые не знали, как обрабатывать тег `<script>`. Поскольку все браузеры, выпущенные за последние 15 лет, не содержат данной проблемы, такие комментарии уже не нужны. Если они есть, то это признак, что перед нами очень древний код. |
62 | 62 |
|
63 | 63 | ## Внешние скрипты |
64 | 64 |
|
|
70 | 70 | <script src="/path/to/script.js"></script> |
71 | 71 | ``` |
72 | 72 |
|
73 | | -Здесь, `/path/to/script.js` это абсолютный путь до скрипта от корня сайта. Также можно указать относительный путь от текущей страницы. Например, `src="script.js"` будет означать файл `"script.js"` находится в текущей папке. |
| 73 | +Здесь, `/path/to/script.js` - это абсолютный путь до скрипта от корня сайта. Также можно указать относительный путь от текущей страницы. Например, `src="script.js"` будет означать, что файл `"script.js"` находится в текущей папке. |
74 | 74 |
|
75 | 75 | Можно указать и полный URL-адрес. Например: |
76 | 76 |
|
|
89 | 89 | ```smart |
90 | 90 | Как правило, только простейшие скрипты помещаются в HTML. Более сложные выделяются в отдельные файлы. |
91 | 91 |
|
92 | | -Польза от отдельных файлов в том, что браузер загрузит скрипт отдельно и может хранить его в [кеше](https://en.wikipedia.org/wiki/Web_cache). |
| 92 | +Польза от отдельных файлов в том, что браузер загрузит скрипт отдельно и сможет хранить его в [кеше](https://en.wikipedia.org/wiki/Web_cache). |
93 | 93 |
|
94 | 94 | Другие страницы, которые подключают тот же скрипт, смогут брать его из кэша вместо повторной загрузки его из сети. И таким образом файл будет загружаться с сервера только один раз. |
95 | 95 |
|
96 | | -Это сокращает расход трафика и делает страницы быстрее. |
| 96 | +Это сокращает расход трафика и ускоряет загрузку страниц. |
97 | 97 | ``` |
98 | 98 |
|
99 | 99 | ````warn header="Если аттрибут `src` установлен, содержимое тега `script` будет игнорироваться." |
100 | 100 | В одном теге `<script>` нельзя использовать одновременно атрибут `src` и код внутри. |
101 | 101 |
|
102 | | -Пример ниже не работает: |
| 102 | +Нижеприведенный пример не работает: |
103 | 103 |
|
104 | 104 | ```html |
105 | 105 | <script *!*src*/!*="file.js"> |
|
109 | 109 |
|
110 | 110 | Нужно выбрать: либо внешний скрипт `<script src="…">`, либо обычный код внутри тега `<script>`. |
111 | 111 |
|
112 | | -Пример выше можно разделить на два скрипта: |
| 112 | +Вышеприведенный пример можно разделить на два скрипта: |
113 | 113 |
|
114 | 114 | ```html |
115 | 115 | <script src="file.js"></script> |
|
122 | 122 | ## Итого |
123 | 123 |
|
124 | 124 | - Для добавления кода JavaScript на страницу используется тег `<script>` |
125 | | -- Аттрибуты `type` и `language` не обязательны. |
| 125 | +- Аттрибуты `type` и `language` необязательны. |
126 | 126 | - Скрипт во внешнем файле можно вставить с помощью `<script src="path/to/script.js"></script>`. |
127 | 127 |
|
128 | | -Нам ещё многое предстоит изучить про браузерные скрипты и их взаимодействие со страницей. Но, как уже было сказано, эта часть учебника посвящена именно языку JavaScript, поэтому здесь мы постараемся не отвлекаться на детали реализации в браузере. Мы будем использовать браузер для запуска JavaScript, это удобно для онлайн-демонстраций, но это только одна из платформ, на которых работает этот язык. |
| 128 | +Нам ещё многое предстоит изучить про браузерные скрипты и их взаимодействие со страницей. Но, как уже было сказано, эта часть учебника посвящена именно языку JavaScript, поэтому здесь мы постараемся не отвлекаться на детали реализации в браузере. Мы воспользуемся браузером для запуска JavaScript, это удобно для онлайн-демонстраций, но это только одна из платформ, на которых работает этот язык. |
0 commit comments