From 6772831200d14c2436aea2d0c837f40dbf12156f Mon Sep 17 00:00:00 2001 From: SphinxKnight Date: Sun, 26 Sep 2021 13:11:47 +0200 Subject: Prepare Web API section for Markdown conversion (#2464) * Remove summary classes and ids * Remove unecessary hidden * Remove useless span filled with useless attributes / ids * Remove useless font * Remove notranslate * Remove id in other elements than headings * Remove name attributes * Remove
 for JS w/ language-js class

* Remove 
 for HTML w/ language-html class

* Remove 
 for other lang w/ language-* class

* Rm highlighted line in code samples

* fix links, internal, external, absolute URLs

* missing file from last commit

* Fix styles errors apart from table + some classes

* Fix notes and warnings (+ some other :x)

* fix typo during merge which broke a doc

* aand forgot a conflict

* fix remaining classes of errors except dls and images

* Fix dls

* Fix images (deki/mozillademos) and remaining style issues

* Remove script tag from svg file

* Remove script tag from svg fileS

* Compress SVG files for CI
---
 files/fr/web/api/worker/index.html             |  28 +++---
 files/fr/web/api/worker/onmessage/index.html   |   4 +-
 files/fr/web/api/worker/postmessage/index.html | 123 ++++++++++++-------------
 files/fr/web/api/worker/worker/index.html      |  12 +--
 4 files changed, 82 insertions(+), 85 deletions(-)

(limited to 'files/fr/web/api/worker')

diff --git a/files/fr/web/api/worker/index.html b/files/fr/web/api/worker/index.html
index 9bfd4f6de4..a77f47cf51 100644
--- a/files/fr/web/api/worker/index.html
+++ b/files/fr/web/api/worker/index.html
@@ -13,23 +13,23 @@ translation_of: Web/API/Worker
 ---
 

{{APIRef("Web Workers API")}}

-

L'interface Worker de l'API Web Workers représente une tâche de fond qui peut facilement être créée et peut envoyer des messages en retour à son créateur. Créer un Worker est aussi simple que d'appeler le constructeur Worker(), en spécifiant un script qui définira le comportement du thread du worker.

+

L'interface Worker de l'API Web Workers représente une tâche de fond qui peut facilement être créée et peut envoyer des messages en retour à son créateur. Créer un Worker est aussi simple que d'appeler le constructeur Worker(), en spécifiant un script qui définira le comportement du thread du worker.

Notez qu'un worker peut lui aussi lancer d'autre Worker tant que ces autres workers sont hébergés par une page qui a la même origine que la page parente. (Note: Les workers imbriqués ne sont pas encore implémentés dans WebKit).

-

De plus les workers peuvent utiliser XMLHttpRequest pour les communiquer avec le réseau, à l'exception des attributs responseXML et channel qui vont toujours retourner null.

+

De plus les workers peuvent utiliser XMLHttpRequest pour les communiquer avec le réseau, à l'exception des attributs responseXML et channel qui vont toujours retourner null.

Toutes les interfaces et toutes les fonctions ne seront pas disponibles pour le script associé au worker.

-
-

Dans firefox, si vous souhaitez utiliser les workers dans une extension et que vous souhaitez avoir accès au js-ctypes, vous devez utiliser le {{ domxref("ChromeWorker") }} à la place.

+
+

Note : Dans Firefox, si vous souhaitez utiliser les workers dans une extension et que vous souhaitez avoir accès au js-ctypes, vous devez utiliser le {{ domxref("ChromeWorker") }} à la place.

Constructeurs

{{domxref("Worker.Worker", "Worker()")}}
-
Créer un web worker dédié qui execute le script qui est au bout de l'URL spécifié. Les workers peuvent aussi être créés en utilisant les Blobs.
+
Créer un web worker dédié qui execute le script qui est au bout de l'URL spécifié. Les workers peuvent aussi être créés en utilisant les Blobs.

Propriétés

@@ -81,15 +81,15 @@ translation_of: Web/API/Worker

L'extrait de code suivant montre la création d'un objet {{domxref("Worker")}} en utilisant le constructeur {{domxref("Worker.Worker", "Worker()")}} et l'utilisation de l'objet:

-
var monWorker = new Worker("worker.js");
-var premier = document.querySelector('#numero1');
+
var monWorker = new Worker("worker.js");
+var premier = document.querySelector('#numero1');
 
-premier.onchange = function() {
-  monWorker.postMessage([premiere.valeur, deuxieme.valeur]);
-  console.log('Message envoyé au worker');
-}
+premier.onchange = function() { + monWorker.postMessage([premiere.valeur, deuxieme.valeur]); + console.log('Message envoyé au worker'); +}
-

Pour un exemple complet, voir Exemple basique de worker dédié (exécuter le worker dédié).

+

Pour un exemple complet, voir Exemple basique de worker dédié (exécuter le worker dédié).

Spécifications

@@ -125,8 +125,8 @@ premier.onchange Voir aussi diff --git a/files/fr/web/api/worker/onmessage/index.html b/files/fr/web/api/worker/onmessage/index.html index c380d76883..802fc4771e 100644 --- a/files/fr/web/api/worker/onmessage/index.html +++ b/files/fr/web/api/worker/onmessage/index.html @@ -12,7 +12,7 @@ translation_of: Web/API/Worker/onmessage

La propriété onmessage de l'interface {{domxref("Worker")}} représente un {{event("Event_handlers", "event handler")}}, à savoir une fonction qui est appelée lorsque l'événement {{event("message")}} survient. Ces événements sont du type {{domxref("MessageEvent")}} et sont appelés quand le parent du worker reçoit un message (c’est-à-dire à partir de la méthode {{domxref("DedicatedWorkerGlobalScope.postMessage")}}).

-

Remarque : le contenu du message est fourni par la propriété data de l'événement {{event("message")}}.

+

Note : Le contenu du message est fourni par la propriété data de l'événement {{event("message")}}.

Syntaxe

@@ -47,7 +47,7 @@ myWorker.onmessage = function(e) {

Remarquez comment dans le script principal, onmessage doit être appelée par myWorker, tandis que dans le script du worker vous avez juste besoin d'appeler onmessage parce que le worker est en réalité le contexte global ({{domxref("DedicatedWorkerGlobalScope")}}).

-

Pour un exemple complet, consulter notre Exemple basique de worker dédié (lancez le worker dédié).

+

Pour un exemple complet, consulter notre Exemple basique de worker dédié (lancez le worker dédié).

Spécifications

diff --git a/files/fr/web/api/worker/postmessage/index.html b/files/fr/web/api/worker/postmessage/index.html index d8a3e7be93..76ea9d7e7e 100644 --- a/files/fr/web/api/worker/postmessage/index.html +++ b/files/fr/web/api/worker/postmessage/index.html @@ -19,35 +19,34 @@ translation_of: Web/API/Worker/postMessage
aMessage
L'objet à envoyer au worker; il va être dans le champ de donnée data dans l'évènement délivré au gestonnaire d'évènement {{domxref("Worker.onmessage")}}. Cette donnée peut être de n'importe quelle valeur ou un objet JavaScript pris en charge par l'algorithme de clone structuré, qui inclut les références cycliques.
transferList {{optional_inline}}
-
Un tableau optionnel d'objets {{domxref("Transferable")}} desquels on doit transférer la propriété. Si la propriété d'un objet est transférée, il devient inutilisable (neutralisé) pour le contexte émétteur et devient disponible uniquement pour le worker auquel cela a été envoyé.
-
Seulement des objets de types {{domxref("MessagePort")}}, {{domxref("ArrayBuffer")}} ou {{domxref("ImageBitmap")}} peuvent être transférés. null n'est pas une valeur accéptée pour transfer.
-
-

Retour

-
+

Un tableau optionnel d'objets {{domxref("Transferable")}} desquels on doit transférer la propriété. Si la propriété d'un objet est transférée, il devient inutilisable (neutralisé) pour le contexte émétteur et devient disponible uniquement pour le worker auquel cela a été envoyé.

+

Seulement des objets de types {{domxref("MessagePort")}}, {{domxref("ArrayBuffer")}} ou {{domxref("ImageBitmap")}} peuvent être transférés. null n'est pas une valeur accéptée pour transfer.

+

Retour

+

Vide.

Exemple

L'extrait de code suivant montre la création d'un objet {{domxref("Worker")}} en utilisant le constructeur {{domxref("Worker.Worker", "Worker()")}}. Quand les deux champs de formulaire (fisrt et second) ont été changés, les évènements {{event("change")}} invoquent postMessage() pour envoyer la valeur des deux entrées au worker courant.

-
var myWorker = new Worker('worker.js');
+
var myWorker = new Worker('worker.js');
 
-first.onchange = function() {
-  myWorker.postMessage([first.value,second.value]);
-  console.log('Message posted to worker');
-}
+first.onchange = function() {
+  myWorker.postMessage([first.value,second.value]);
+  console.log('Message posted to worker');
+}
 
-second.onchange = function() {
-  myWorker.postMessage([first.value,second.value]);
-  console.log('Message posted to worker');
-}
+second.onchange = function() { + myWorker.postMessage([first.value,second.value]); + console.log('Message posted to worker'); +}

Pour l'exemple en entier, voir Basic dedicated worder example (démonstration).

-
-

Remarque: postMessage() peut n'envoyer qu'un objet à la fois. Comme ci-dessus, si vous voulez envoyez plusieurs valeurs, vous pouvez utiliser un tableau.

+
+

Note : postMessage() peut n'envoyer qu'un objet à la fois. Comme ci-dessus, si vous voulez envoyez plusieurs valeurs, vous pouvez utiliser un tableau.

Exemple de transfert

@@ -56,60 +55,60 @@ second.Main thread code: -
var myWorker = new ChromeWorker(self.path + 'myWorker.js');
-
-function handleMessageFromWorker(msg) {
-    console.log('incoming message from worker, msg:', msg);
-    switch (msg.data.aTopic) {
-        case 'do_sendMainArrBuff':
-            sendMainArrBuff(msg.data.aBuf)
-            break;
-        default:
-            throw 'no aTopic on incoming message to ChromeWorker';
-    }
-}
-
-myWorker.addEventListener('message', handleMessageFromWorker);
-
-// Ok lets create the buffer and send it
-var arrBuf = new ArrayBuffer(8);
-console.info('arrBuf.byteLength pre transfer:', arrBuf.byteLength);
-
-myWorker.postMessage(
-    {
-        aTopic: 'do_sendWorkerArrBuff',
-        aBuf: arrBuf // The array buffer that we passed to the transferrable section 3 lines below
-    },
-    [
-        arrBuf // The array buffer we created 9 lines above
-    ]
-);
-
-console.info('arrBuf.byteLength post transfer:', arrBuf.byteLength);
+
var myWorker = new ChromeWorker(self.path + 'myWorker.js');
+
+function handleMessageFromWorker(msg) {
+    console.log('incoming message from worker, msg:', msg);
+    switch (msg.data.aTopic) {
+        case 'do_sendMainArrBuff':
+            sendMainArrBuff(msg.data.aBuf)
+            break;
+        default:
+            throw 'no aTopic on incoming message to ChromeWorker';
+    }
+}
+
+myWorker.addEventListener('message', handleMessageFromWorker);
+
+// Ok lets create the buffer and send it
+var arrBuf = new ArrayBuffer(8);
+console.info('arrBuf.byteLength pre transfer:', arrBuf.byteLength);
+
+myWorker.postMessage(
+    {
+        aTopic: 'do_sendWorkerArrBuff',
+        aBuf: arrBuf // The array buffer that we passed to the transferrable section 3 lines below
+    },
+    [
+        arrBuf // The array buffer we created 9 lines above
+    ]
+);
+
+console.info('arrBuf.byteLength post transfer:', arrBuf.byteLength);

Worker code

-
self.onmessage = function (msg) {
-    switch (msg.data.aTopic) {
-        case 'do_sendWorkerArrBuff':
-                sendWorkerArrBuff(msg.data.aBuf)
-            break;
-        default:
-            throw 'no aTopic on incoming message to ChromeWorker';
-    }
-}
+
self.onmessage = function (msg) {
+    switch (msg.data.aTopic) {
+        case 'do_sendWorkerArrBuff':
+                sendWorkerArrBuff(msg.data.aBuf)
+            break;
+        default:
+            throw 'no aTopic on incoming message to ChromeWorker';
+    }
+}
 
-function sendWorkerArrBuff(aBuf) {
-    console.info('from worker, PRE send back aBuf.byteLength:', aBuf.byteLength);
+function sendWorkerArrBuff(aBuf) {
+    console.info('from worker, PRE send back aBuf.byteLength:', aBuf.byteLength);
 
-    self.postMessage({aTopic:'do_sendMainArrBuff', aBuf:aBuf}, [aBuf]);
+    self.postMessage({aTopic:'do_sendMainArrBuff', aBuf:aBuf}, [aBuf]);
 
-    console.info('from worker, POST send back aBuf.byteLength:', aBuf.byteLength);
-}
+ console.info('from worker, POST send back aBuf.byteLength:', aBuf.byteLength); +}

Output logged

-
arrBuf.byteLength pre transfer: 8                              bootstrap.js:40
+
arrBuf.byteLength pre transfer: 8                              bootstrap.js:40
 arrBuf.byteLength post transfer: 0                             bootstrap.js:42
 
 from worker, PRE send back aBuf.byteLength: 8                  myWorker.js:5:2
@@ -117,7 +116,7 @@ from worker, PRE send back aBuf.byteLength: 8                  myWorker.js:5:2
 incoming message from worker, msg: message { ... }             bootstrap.js:20
 got back buf in main thread, aBuf.byteLength: 8                bootstrap.js:12
 
-from worker, POST send back aBuf.byteLength: 0                 myWorker.js:7:2
+from worker, POST send back aBuf.byteLength: 0 myWorker.js:7:2

byteLength passe à 0 quand il est transferré. Pour voir l'exemple de cette extension de démonstration de Firefox, voir GitHub :: ChromeWorker - demo-transfer-arraybuffer

diff --git a/files/fr/web/api/worker/worker/index.html b/files/fr/web/api/worker/worker/index.html index 662be32858..1448f5eb35 100644 --- a/files/fr/web/api/worker/worker/index.html +++ b/files/fr/web/api/worker/worker/index.html @@ -8,10 +8,10 @@ translation_of: Web/API/Worker/Worker ---

{{APIRef("Worker")}}

-

Le constructeur Worker() crée un objet {{domxref("Worker")}} qui exécute le script à l'URL spécifiée. Ce script doit obéir à la same-origin policy.

+

Le constructeur Worker() crée un objet {{domxref("Worker")}} qui exécute le script à l'URL spécifiée. Ce script doit obéir à la same-origin policy.

-

Remarque : il y a un désaccord entre les éditeurs de navigateur sur la question de savoir si une donnée URI relève ou non de la même origine. Bien que Gecko 10.0 {{ geckoRelease("10.0") }} et suivant accepte les données URIs, ce n'est pas le cas dans tous les autres navigateurs.

+

Note : il y a un désaccord entre les éditeurs de navigateur sur la question de savoir si une donnée URI relève ou non de la même origine. Bien que Gecko 10.0 {{ geckoRelease("10.0") }} et suivant accepte les données URIs, ce n'est pas le cas dans tous les autres navigateurs.

Syntaxe

@@ -30,7 +30,7 @@ translation_of: Web/API/Worker/Worker
  • type: Une {{domxref("DOMString")}} définissant le type de worker à créer. The valeur peuvent être classic ou module. Si cette prpriété n'est pas définie, la valeur sera classic.
  • credentials: Une {{domxref("DOMString")}} définissant le type de politique d'origine à utiliser pour le worker. Les valeurs peuvent être omit, same-origin ou include. Si cette propriété n'est pas définie, ou que type est défini à classic, la valeur sera classic.
  • -
  • name: Une {{domxref("DOMString")}} définissant un identifiant pour l'environment du worker {{domxref("DedicatedWorkerGlobalScope")}}, souvent utilisé pour le débogage.
  • +
  • name: Une {{domxref("DOMString")}} définissant un identifiant pour l'environment du worker {{domxref("DedicatedWorkerGlobalScope")}}, souvent utilisé pour le débogage.
@@ -54,7 +54,7 @@ first.onchange = function() { console.log('Message envoyé au worker'); }
-

Pour un exemple complet, consultez notre Exemple basique d'un worker dédié (lancer le worker dédié).

+

Pour un exemple complet, consultez notre Exemple basique d'un worker dédié (lancer le worker dédié).

Spécifications

@@ -75,12 +75,10 @@ first.onchange = function() {

Compatibilité des navigateurs

- -

{{Compat("api.Worker.Worker")}}

-

Remarque: Un navigateur peut indiquer avoir un support complet de Worker() même s'il ne supporte pas les fichiers worker écrit comme des modules. À partir du premier août 2019, aucun navigateur n'est connu pour avoir un support en production des fichiers worker écrit comme des modules. Sans ces suppports, les fichiers workers écrit sous forme de module et les modules utilisés dans les workers doivent être transpilés ou convertis en non-module pour être utilisables.

+

Note : Un navigateur peut indiquer avoir un support complet de Worker() même s'il ne supporte pas les fichiers worker écrit comme des modules. À partir du premier août 2019, aucun navigateur n'est connu pour avoir un support en production des fichiers worker écrit comme des modules. Sans ces suppports, les fichiers workers écrit sous forme de module et les modules utilisés dans les workers doivent être transpilés ou convertis en non-module pour être utilisables.

Voir aussi

-- cgit v1.2.3-54-g00ecf