Skip to content

Commit a27337e

Browse files
ca11adolex111
andauthored
Apply suggestions from code review
Co-Authored-By: Alexey Pyltsyn <lex61rus@gmail.com>
1 parent 867bc87 commit a27337e

1 file changed

Lines changed: 11 additions & 11 deletions

File tree

  • 2-ui/5-loading/01-onload-ondomcontentloaded

2-ui/5-loading/01-onload-ondomcontentloaded/article.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Страница: DOMContentLoaded, load, beforeunload, unload
22

3-
У жизненного цикла HTML страницы есть три важных события:
3+
У жизненного цикла HTML-страницы есть три важных события:
44

5-
- DOMContentLoaded -- браузер полностью загрузил HTML, было построено DOM-дерево, но внешние ресурсы, такие как картинки `<img>` и стили, могут быть ещё не загружены.
6-
- load -- браузер загрузил все ресурсы (картинки, стили и т.д.).
7-
- beforeunload/unload -- пользователь покидает страницу.
5+
- `DOMContentLoaded` -- браузер полностью загрузил HTML, было построено DOM-дерево, но внешние ресурсы, такие как картинки `<img>` и стили, могут быть ещё не загружены.
6+
- `load` -- браузер загрузил все ресурсы (картинки, стили и т.д.).
7+
- `beforeunload/unload` -- пользователь покидает страницу.
88

99
Каждое из этих событий может быть полезно:
1010

@@ -33,7 +33,7 @@ document.addEventListener("DOMContentLoaded", ready);
3333
function ready() {
3434
alert('DOM готов');
3535
36-
// изображение ещё не загружено (если не было закэшировано), так что размер будет 0x0
36+
// изображение ещё не загружено (если не было закешировано), так что размер будет 0x0
3737
alert(`Размер изображения: ${img.offsetWidth}x${img.offsetHeight}`);
3838
}
3939
@@ -45,7 +45,7 @@ document.addEventListener("DOMContentLoaded", ready);
4545
<img id="img" src="https://en.js.cx/clipart/train.gif?speed=1&cache=0">
4646
```
4747

48-
В этом примере обработчик `DOMContentLoaded запустится, когда документ загрузится, так что он увидит все элементы, включая расположенный ниже `<img>`.
48+
В этом примере обработчик `DOMContentLoaded` запустится, когда документ загрузится, так что он увидит все элементы, включая расположенный ниже `<img>`.
4949

5050
Но он не дожидается, пока загрузится изображение. Поэтому `alert` покажет нулевой размер.
5151

@@ -67,15 +67,15 @@ document.addEventListener("DOMContentLoaded", ready);
6767
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.3.0/lodash.js"></script>
6868

6969
<script>
70-
alert("Библиотека загружена, инлайновый скрипт выполнен");
70+
alert("Библиотека загружена, встроенный скрипт выполнен");
7171
</script>
7272
```
7373

7474
В примере выше мы сначала увидим "Библиотека загружена...", а затем "DOM готов!" (все скрипты выполнены).
7575

7676
```warn header="Скрипты с `async`, `defer` или `type=\"module\"` не блокируют DOMContentLoaded"
7777

78-
Аттрибуты скрипта `async` и `defer`, которые мы рассмотрим [немного позже](info:script-async-defer), не блокируют DOMContentLoaded. [JavaScript модули](info:modules) ведут себя так же, как `defer` - тоже его не блокируют.
78+
Атрибуты скрипта `async` и `defer`, которые мы рассмотрим [немного позже](info:script-async-defer), не блокируют DOMContentLoaded. [JavaScript модули](info:modules) ведут себя так же, как `defer` - тоже его не блокируют.
7979

8080
Так что здесь мы говорим об "обычных" скриптах, таких как `<script>...</script>` или `<script src="..."></script>`.
8181
```
@@ -132,7 +132,7 @@ Firefox, Chrome и Opera автоматически заполняют поля
132132

133133
Обычно здесь отсылают статистику.
134134

135-
Скажем, мы собрали данные о том, как используется страница: клики, прокрутка, просмотры областей страницы и так далее.
135+
Предположим, мы собрали данные о том, как используется страница: клики, прокрутка, просмотры областей страницы и так далее.
136136

137137
Естественно, событие `unload` -- это тот момент, когда пользователь нас покидает и мы хотим сохранить эти данные.
138138

@@ -151,7 +151,7 @@ window.addEventListener("unload", function() {
151151
152152
- Отсылается POST-запрос.
153153
- Мы можем послать не только строку, но так же формы и другие форматы, как описано в главе <info:fetch-basics>, но обычно это строковый объект.
154-
- Размер данных ограничен 64кб.
154+
- Размер данных ограничен 64 Кб.
155155
156156
К тому моменту, как `sendBeacon` завершится, браузер наверняка уже покинет страницу, так что возможности обработать ответ сервера не будет (для статистики он обычно пустой).
157157
@@ -218,7 +218,7 @@ if (document.readyState == 'loading') {
218218
}
219219
```
220220
221-
Так же есть событие `readystatechange`, которое генерируется при изменении состояния, так что мы можем вывести все эти состояния таким образом:
221+
Также есть событие `readystatechange`, которое генерируется при изменении состояния, так что мы можем вывести все эти состояния таким образом:
222222
223223
```js run
224224
// текущее состояние

0 commit comments

Comments
 (0)