You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 2-ui/5-loading/02-script-async-defer/article.md
+9-20Lines changed: 9 additions & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -120,9 +120,9 @@ Donc, si nous avons plusieurs scripts `async`, ils peuvent s'exécuter dans n'im
120
120
<p>...content after scripts...</p>
121
121
```
122
122
123
-
1. Le contenu de la page apparaît immédiatement: `async` ne la bloque pas.
124
-
2.`DOMContentLoaded` peut arriver soit avant ou après `async`, aucune garantie ici.
125
-
3. Les scripts asynchrones n'attendent pas les uns les autres. Un script plus petit `small.js` passe en second, mais se charge probablement avant `long.js`, donc s'exécute en premier. C'est ce qu'on appelle une commande "load-first".
123
+
- Le contenu de la page apparaît immédiatement: `async` ne la bloque pas.
124
+
-`DOMContentLoaded` peut arriver soit avant ou après `async`, aucune garantie ici.
125
+
- Les scripts asynchrones n'attendent pas les uns les autres. Un script plus petit `small.js` passe en second, mais se charge probablement avant `long.js`, donc s'exécute en premier. C'est ce qu'on appelle une commande "load-first".
126
126
127
127
Les scripts asynchrones sont parfaits lorsque nous intégrons un script tiers indépendant dans la page: compteurs, publicités, etc., car ils ne dépendent pas de nos scripts et nos scripts ne doivent pas les attendre:
128
128
@@ -131,19 +131,14 @@ Les scripts asynchrones sont parfaits lorsque nous intégrons un script tiers in
```smart header="The `async` attribute is only for external scripts"
137
-
Just like `defer`, the `async` attribute is ignored if the `<script>` tag has no `src`.
134
+
```smart header="L'attribut `async` est uniquement pour les scripts externes"
135
+
Tout comme `defer`, l'attribut `async` est ignoré si la balise `<script>` n'a pas de `src`.
138
136
```
139
137
140
-
## Dynamic scripts
141
-
142
-
There's one more important way of adding a script to the page.
143
-
>>>>>>> 4541b7af7584014a676da731f6e8774da5e059f6
144
-
145
138
## Les scripts dynamiques
146
139
140
+
Il existe un autre moyen important d'ajouter un script à la page.
141
+
147
142
Nous pouvons également ajouter un script dynamiquement en utilisant JavaScript:
148
143
149
144
```js run
@@ -197,17 +192,11 @@ Mais il existe également des différences essentielles entre eux:
197
192
198
193
|| L'ordre |`DOMContentLoaded`|
199
194
|---------|---------|---------|
200
-
<<<<<<< HEAD
201
195
|`async`|*Load-first*. Leur ordre dans le document n'a pas d'importance -- premier chargé, premier exécuté | Sans importance. Peut se charger et s'exécuter alors que le document n'a pas encore été entièrement téléchargé. Cela se produit si les scripts sont petits ou mis en cache et que le document est suffisamment long. |
202
-
|`defer`|*L'ordre du Document*. | Exécute après le chargement et l'analyse du document (ils attendent si nécessaire), juste avant `DOMContentLoaded`. |
203
-
=======
204
-
|`async`|*Load-first order*. Their document order doesn't matter -- which loads first runs first | Irrelevant. May load and execute while the document has not yet been fully downloaded. That happens if scripts are small or cached, and the document is long enough. |
205
-
|`defer`|*Document order* (as they go in the document). | Execute after the document is loaded and parsed (they wait if needed), right before `DOMContentLoaded`. |
206
-
207
-
In practice, `defer` is used for scripts that need the whole DOM and/or their relative execution order is important.
208
-
>>>>>>> 4541b7af7584014a676da731f6e8774da5e059f6
196
+
|`defer`|*Ordre de document* (tel qu'il apparaît dans le document).| Exécute après le chargement et l'analyse du document (ils attendent si nécessaire), juste avant `DOMContentLoaded`. |
209
197
210
198
En pratique, `defer` est utilisé pour les scripts qui ont besoin de tout le DOM et/ou leur ordre d'exécution relatif est important.
199
+
211
200
Et `async` est utilisé pour des scripts indépendants, comme des compteurs ou des publicités. Et leur ordre d'exécution relatif n'a pas d'importance.
212
201
213
202
```warn header="La page sans scripts devrait être utilisable"
0 commit comments