recursal/MDN huggingface dataset:
PerformanceNavigation.type
==========================

**Attention :** Cette interface est dépréciée dans la spécification Navigation Timing Level 2. Veuillez utiliser la propriété `PerformanceNavigationTiming.type` de l'interface `PerformanceNavigationTiming` à la place.

L'ancienne propriété **`PerformanceNavigation.type`** en lecture seule renvoie un `unsigned short` contenant une constante décrivant comment la navigation vers cette page a été effectuée. Les valeurs possibles sont :

| Valeur | Nom de la constante | Signification |
| --- | --- | --- |
| `0` | `TYPE_NAVIGATE` | La page a été consultée en suivant un lien, un signet, un formulaire, un script ou en tapant l'URL dans la barre d'adresse. |
| `1` | `TYPE_RELOAD` | La page a été consultée en cliquant sur le bouton Recharger ou via la méthode `Location.reload()`. |
| `2` | `TYPE_BACK_FORWARD` | La page a été consultée en naviguant dans l'historique. |
| `255` | `TYPE_RESERVED` | De toute autre manière. |

Syntaxe
-------


```js
let type = performanceNavigation.type;
```

Spécifications
--------------

| Specification |
| --- |
| Navigation Timing Level 2 # dom-performancenavigation-type |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* L'interface `PerformanceNavigation` à laquelle il appartient.
DeviceRotationRate.beta
=======================

Cette propriété indique la vitesse de rotation autour de l'axe X — en degrés par seconde — dans un objet `DeviceRotationRate`.

Syntaxe
-------


```js
var beta = deviceRotationRate.beta;
```


Cette propriété est en lecture seule.

### Valeur retournée

`beta`

Un `double` indiquant la vitesse de rotation autour de l'axe X, en degrés par seconde. Voir Détecter l'orientation de l'appareil (en-US) pour plus de détails.

Spécifications
--------------

| Specification |
| --- |
| DeviceOrientation Event Specification # dom-devicemotioneventrotationrate-beta |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
DeviceRotationRate.alpha
========================

Cette propriété indique la vitesse de rotation autour de l'axe Z — en degrés par seconde — dans un objet `DeviceRotationRate`.

Syntaxe
-------


```js
var alpha = deviceRotationRate.alpha;
```


Cette propriété est en lecture seule.

### Valeur retournée

`alpha`

Un `double` indiquant la vitesse de rotation autour de l'axe Z, en degrés par seconde. Voir Détecter l'orientation de l'appareil (en-US) pour plus de détails.

Spécifications
--------------

| Specification |
| --- |
| DeviceOrientation Event Specification # dom-devicemotioneventrotationrate-alpha |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
DeviceRotationRate.gamma
========================

Cette propriété indique la vitesse de rotation autour de l'axe Y — en degrés par seconde — dans un objet `DeviceRotationRate`.

Syntaxe
-------


```js
var gamma = deviceRotationRate.gamma;
```


Cette propriété est en lecture seule.

### Valeur retournée

`gamma`

Un `double` indiquant la vitesse de rotation autour de l'axe Y, en degrés par seconde. Voir Détecter l'orientation d'un appareil (en-US) pour plus de détails.

Spécifications
--------------

| Specification |
| --- |
| DeviceOrientation Event Specification # dom-devicemotioneventrotationrate-gamma |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
ToggleEvent : propriété oldState
================================

Limited availability
--------------------

This feature is not Baseline because it does not work in some of the most widely-used browsers.

* Learn more
* See full compatibility
* Report feedback
La propriété en lecture seule **`oldState`** de l'interface `ToggleEvent` est une chaîne de caractères représentant l'état depuis lequel l'élément est en train de transitionner.

Valeur
------

Une chaîne de caractères. Les valeurs possibles sont `"open"` (le *popover* est en train d'être affiché) ou `"closed"` (le *popover* est en train d'être masqué).

Exemples
--------


```js
const popover = document.getElementById("mypopover");

// …

popover.addEventListener("beforetoggle", (event) => {
  if (event.oldState === "open") {
    console.log("Le popover est en train d'être masqué");
  } else {
    console.log("Le popover est en train d'être affiché");
  }
});
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-toggleevent-oldstate |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* L'API Popover
ToggleEvent : propriété newState
================================

Limited availability
--------------------

This feature is not Baseline because it does not work in some of the most widely-used browsers.

* Learn more
* See full compatibility
* Report feedback
La propriété en lecture seule **`newState`** de l'interface `ToggleEvent` est une chaîne de caractères représentant l'état vers lequel l'élément est en train de transitionner.

Valeur
------

Une chaîne de caractères. Les valeurs possibles sont `"open"` (le *popover* est en train d'être affiché) ou `"closed"` (le *popover* est en train d'être masqué).

Exemples
--------


```js
const popover = document.getElementById("mypopover");

// …

popover.addEventListener("beforetoggle", (event) => {
  if (event.newState === "open") {
    console.log("Le popover est en train d'être affiché");
  } else {
    console.log("Le popover est en train d'être masqué");
  }
});
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-toggleevent-newstate |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* L'API Popover
ToggleEvent : le constructeur ToggleEvent()
===========================================

Limited availability
--------------------

This feature is not Baseline because it does not work in some of the most widely-used browsers.

* Learn more
* See full compatibility
* Report feedback
Le constructeur **`ToggleEvent()`** crée un nouvel objet `ToggleEvent`.

Syntaxe
-------


```js
new ToggleEvent(type, init)
```

### Paramètres

`type`

Une chaîne de caractères représentant le type d'évènement. Dans le cas de `ToggleEvent`, il s'agit toujours de `"toggleevent"`.

`init`

Un objet contenant les propriétés suivantes :

`newState`

Une chaîne de caractères représentant l'état vers lequel l'élément est en train de transitionner. Les valeurs possibles sont `"open"` et `"closed"`.

`oldState`

Une chaîne de caractères représentant l'état depuis lequel l'élément est en train de transitionner. Les valeurs possibles sont `"open"` et `"closed"`.


Exemples
--------

Ce constructeur ne devrait généralement pas être utilisé manuellement dans un script. Un nouvel objet `ToggleEvent` est construit automatiquement lorsqu'un gestionnaire est invoqué à la suite du déclenchement d'un évènement pertinent.

Par exemple :


```js
const popover = document.getElementById("mypopover");

// …

popover.addEventListener("beforetoggle", (event) => {
  if (event.newState === "open") {
    console.log("Le popover est en train d'être affiché");
  } else {
    console.log("Le popover est en train d'être masqué");
  }
});
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # toggleevent |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* L'API Popover
ServiceWorker.onstatechange
===========================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

Une propriété `EventListener` appelée quand un évenement de type `statechange` est déclenché; c'est le cas dès que le `ServiceWorker.state` change.

Syntaxe
-------


```js
ServiceWorker.onstatechange = function(statechangeevent) { ... }
ServiceWorker.addEventListener('statechange', function(statechangeevent) { ... } )
```

Examples
--------

Ce fragment de code présente un exemple d'enregistrement d'évenements pour le service worker (démo live). Le code écoute pour tout changement du `ServiceWorker.state` et retourne sa valeur.


```js
var serviceWorker;
if (registration.installing) {
  serviceWorker = registration.installing;
  document.querySelector("#kind").textContent = "installé";
} else if (registration.waiting) {
  serviceWorker = registration.waiting;
  document.querySelector("#kind").textContent = "en attente";
} else if (registration.active) {
  serviceWorker = registration.active;
  document.querySelector("#kind").textContent = "actif";
}

if (serviceWorker) {
  logState(serviceWorker.state);
  serviceWorker.addEventListener("statechange", function (e) {
    logState(e.target.state);
  });
}
```


Notez que quand l'évenement `statechange` est déclenché, la référence du service worker peut avoir changée. Par exemple :


```js
navigator.serviceWorker.register(..).then(function(swr) {
  swr.installing.state == "installé"
  swr.installing.onstatechange = function() {
    swr.installing == null;
    // Ici, swr.waiting OU swr.active peuvent valoir true. Parce que l'évènement
    // statechange est mis en queue, pendant que le worker sous jacent est peut être en
    // état d'attente et sera immédiatement activé si possible.
  }
})
```

Spécifications
--------------

| Specification |
| --- |
| Service Workers # dom-serviceworker-onstatechange |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
ServiceWorker.state
===================

La propriété en lecture seule **`state`**, rattachée à l'interface `ServiceWorker`, renvoie une chaîne de caractères indiquant l'état courant du *service worker*. Sa valeur peut être :

* `"installing"`,
* `"installed"`,
* `"activating"`,
* `"activated"`,
* ou `"redundant"`.
Valeur
------

Une chaîne de caractères (`String`) qui peut valoir :

`"installing"`

Le *service worker* est en cours d'installation. Pendant cet état, `ExtendableEvent.waitUntil()` (en-US) peut être appelé au sein du gestionnaire d'évènement `install` pour étendre la durée de vie du worker en installation jusqu'à ce que la promesse passée soit réussie. Cet état sert principalement à s'assurer que le *service worker* n'est pas actif tant que tous les caches n'ont pas été remplis.

`"installed"`

Dans cet état, le *service worker* est en attente.

`"activating"`

Dans cet état, le *service worker* est considéré comme actif. Pendant cet état, on peut appeler `ExtendableEvent.waitUntil()` (en-US) dans le gestionnaire d'évènements `onactivate` afin d'étendre la durée de vie du worker jusqu'à ce que la promesse passée soit réussie. Aucun évènement fonctionnel n'est diffusé tant que l'état n'est pas `"activated"`.

`"activated"`

Dans cet état, le *service worker* est considéré comme actif et comme pouvant gérer les évènements fonctionnels.

`"redundant"`

Un nouveau *service worker* qui remplace le *service worker* courant, ou le *service worker* courant qui est écarté en raison d'un échec d'installation.

Exemples
--------

Le fragment de code qui suit est tiré de l'exemple `registration-events` (voir la démo correspondante). Le code surveille tout changement de `ServiceWorker.state` et renvoie la valeur.


```js
let serviceWorker;
if (registration.installing) {
  serviceWorker = registration.installing;
  document.querySelector("#kind").textContent = "installing";
} else if (registration.waiting) {
  serviceWorker = registration.waiting;
  document.querySelector("#kind").textContent = "waiting";
} else if (registration.active) {
  serviceWorker = registration.active;
  document.querySelector("#kind").textContent = "active";
}

if (serviceWorker) {
  logState(serviceWorker.state);
  serviceWorker.addEventListener("statechange", function (e) {
    logState(e.target.state);
  });
}
```

Spécifications
--------------

| Specification |
| --- |
| Service Workers # service-worker-state |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
HTMLMediaElement.crossOrigin
============================

La propriété **`HTMLMediaElement.crossOrigin`** est le paramètre CORS pour cet élément d'image. Voir les attributs des paramètres CORS pour plus de détails.

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-media-crossorigin |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* L'interface qui porte cette propriété, `HTMLMediaElement`.
HTMLMediaElement.captureStream()
================================

**`captureStream()`** est une méthode de l'interface `HTMLMediaElement` retournant un objet `MediaStream` qui diffuse en temps réel l'enregistrement d'un contenu obtenu dans un élément média.

Syntaxe
-------


```js
var mediaStream = mediaElement.captureStream();
```

### Paramètres

Aucun.

### Retours

Un objet `MediaStream` pouvant être utilisé en tant que source pour des données audio et/ou vidéo par d'autres média traitant du code, ou comme source pour WebRTC.

Exemple
-------

Dans cet exemple, un écouteur d'événement est mise en place, permettant la capture du contenu d'un élément média avec l'ID `"playback"` dans un `MediaStream` lors d'un clic sur un bouton de lancement. La flux peut être utilisée dans d'autres buts—comme une source de diffusion via WebRTC, vous permettant de partager des vidéos pré-enregistrées avec une autre personne lors d'un appel video.


```js
document.querySelector(".playAndRecord").addEventListener("click", function () {
  var playbackElement = document.getElementById("playback");
  var captureStream = playbackElement.captureStream();
  playbackElement.play();
});
```


Voir Recording a media element (en-US) pour des exemples et explications plus détaillées et complexes.

Spécifications
--------------

| Specification |
| --- |
| Media Capture from DOM Elements # dom-htmlmediaelement-capturestream |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* Recording a media element (en-US)
* MediaStream Recording API (en-US)
* `HTMLCanvasElement.captureStream()` (en-US)
* `MediaStream`
* WebRTC API
HTMLMediaElement.controlsList
=============================

**Expérimental:** **Cette fonction est expérimentale**  
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.  
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La propriété **`controlsList`** de l'interface `HTMLMediaElement` renvoie un objet `DOMTokenList` qui aide l'agent utilisateur à sélectionner les contrôles à afficher sur l'élément multimédia chaque fois que cet agent affiche son propre ensemble de contrôles. L'objet `DOMTokenList` prend une ou plusieurs des trois valeurs possibles suivantes : `nodownload`, `nofullscreen` et `noremoteplayback`.

Valeur
------

Un objet `DOMTokenList`.

Spécifications
--------------

| Specification |
| --- |
| Unknown specification # solution-outline |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* Exemple Google Chrome pour `HTMLMediaElement.controlsList`
HTMLMediaElement.audioTracks
============================

La propriété **`audioTracks`** est une propriété en lecture seule rattachée à l'interface `HTMLMediaElement` qui renvoie un objet `AudioTrackList` (en-US) répertoriant tous les objets `AudioTrack` (en-US) représentant les pistes audio de l'élément multimédia.

L'élément multimédia peut être soit un élément `<audio>` ou un élément `<video>`.

La liste renvoyée est dynamique ; c'est-à-dire que lorsque des pistes sont ajoutées et supprimées de l'élément multimédia, le contenu de la liste change dynamiquement. Une fois que vous avez une référence à la liste, vous pouvez surveiller les modifications pour détecter l'ajout de nouvelles pistes audio ou la suppression de pistes existantes. Vous pouvez consulter les gestionnaires d'évènements (en-US) associés à `AudioTrackList` (en-US) pour en savoir plus sur les modifications apportées à la liste des pistes d'un élément multimédia.

Syntaxe
-------


```js
let audioTracks = mediaElement.audioTracks;
```

### Valeur

Un objet `AudioTrackList` (en-US) représente la liste des pistes audio incluses dans l'élément multimédia. La liste des pistes est accessible en notation matricielle ou en utilisant la méthode `getTrackById()` (en-US) de l'objet.

Chaque piste est représentée par un objet `AudioTrack` (en-US) qui fournit des informations sur la piste.

Exemples
--------

Dans cet exemple, toutes les pistes audio d'un élément donné sont coupées.

### HTML

Le fragment HTML contient l'élément média en question.


```html
<video id="video" src="somevideo.mp4"></video>
```

### JavaScript

Le code JavaScript gère la mise en sourdine des pistes audio de l'élément vidéo.


```js
let video = document.getElementById("video");

for (let i = 0; i < video.audioTracks.length; i += 1) {
  video.audioTracks[i].enabled = false;
}
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-media-audiotracks-dev |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* L'interface qui porte cette propriété, `HTMLMediaElement`.
* `<audio>` et `<video>`
* `AudioTrack` (en-US) et `AudioTrackList` (en-US)
GlobalEventHandlers.onloadstart
===============================

La propriété **`onloadstart`** du "mixin" `GlobalEventHandlers` Un gestionnaire d'évènement représentant le code à appeler lorsque l'évènement `loadstart` est déclenché (quand la progression est commencée sur le chargement d'une ressource).

Syntaxe
-------


```js
img.onloadstart = funcRef;
```

### Valeur

`funcRef` est la fonction du gestionnaire à appeler lorsque l'évènement `loadstart` de la ressource est déclenché.

Exemples
--------

### Contenu HTML


```html
<img src="myImage.jpg" />
```

### Contenu JavaScript


```js
// 'loadstart' est lancé le premier, puis 'load', puis 'loadend'

image.addEventListener("load", function (e) {
  console.log("Image loaded");
});

image.addEventListener("loadstart", function (e) {
  console.log("Image load started");
});

image.addEventListener("loadend", function (e) {
  console.log("Image load finished");
});
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # event-media-loadstart |
| HTML Standard # handler-onloadstart |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
HTMLMediaElement: emptied
=========================

L'événement **`emptied`** est déclenché lorsqu'un média est devenu vide. Par exemple, cet événement est envoyé si le média a déjà été chargé (complètement ou partiellement), et que la méthode *load()* est appelé pour le recharger.

Informations générales
----------------------

Spécification

HTML5 media

Interface
`Event`
propagation

Non

Annulable

Non

Cible
`Element`
Action par défaut

Aucune

Propriétés
----------

| Property | Type | Description |
| --- | --- | --- |
| `target` Lecture seule  | `EventTarget` | The event target (the topmost target in the DOM tree). |
| `type` Lecture seule  | `DOMString` | The type of event. |
| `bubbles` Lecture seule  | `Boolean` | Whether the event normally bubbles or not. |
| `cancelable` Lecture seule  | `Boolean` | Whether the event is cancellable or not. |

Evénements liés
---------------

* `playing` (en-US)
* `waiting` (en-US)
* `seeking` (en-US)
* `seeked` (en-US)
* `ended`
* `loadedmetadata` (en-US)
* `loadeddata` (en-US)
* `canplay`
* `canplaythrough`
* `durationchange`
* `timeupdate` (en-US)
* `play` (en-US)
* `pause` (en-US)
* `ratechange` (en-US)
* `volumechange` (en-US)
* `suspend` (en-US)
* `stalled` (en-US)
HTMLMediaElement.volume
=======================

La propriété **`HTMLMediaElement.volume`** définit le volume auquel le média doit être lu.

Syntaxe
-------


```js
var volume = video.volume; //1
```

### Valeur

Une valeur de type double (nombre à virgule) inclut entre 0 et 1, si elle vaut 0 le son est coupé et elle vaut 1 le son est le plus élevé possible.

Exemple
-------


```js
var obj = document.createElement("audio");
console.log(obj.volume); // 1
obj.volume = 0.75;
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-media-volume-dev |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* The interface defining it, `HTMLMediaElement`.
* `HTMLMediaElement.muted` (en-US)
HTMLMediaElement: abort event
=============================

L'événement **`abort`** se déclenche si l'élément écouté ne s'est pas chargé complétement. Il est désactivé si le résultat obtenu est une erreur.

|  |  |
| --- | --- |
| Bubbles | No |
| Cancelable | No |
| Interface | `Event` |
| Event handler property | `onabort` |

Exemples
--------


```js
const video = document.querySelector("video");
const videoSrc = "https://path/to/video.webm";

video.addEventListener("abort", () => {
  console.log(`Abort loading: ${videoSrc}`);
});

const source = document.createElement("source");
source.setAttribute("src", videoSrc);
source.setAttribute("type", "video/webm");

video.appendChild(source);
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # event-media-abort |
| HTML Standard # handler-onabort |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `HTMLAudioElement` (en-US)
* `HTMLVideoElement`
* `<audio>`
* `<video>`
HTMLMediaElement.loop
=====================

La propriété **`HTMLMediaElement.loop`** reflète dans le DOM l'attribut HTML `loop`, qui contrôle si la lecture de l'élément multimédia doit recommencer une fois la fin du média atteinte.

Syntaxe
-------


```js
let loop = video.loop;
audio.loop = true;
```

### Valeur

Une valeur booléenne.

Exemple
-------


```js
const obj = document.createElement("video");
obj.loop = true; // vrai
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # dom-media-loop |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* L'interface qui porte cette propriété, HTMLMediaElement.