aboutsummaryrefslogtreecommitdiff
path: root/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html
blob: ff9ccb42bb1738d99ac90fce4a49c0b83c25321a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
---
title: contentScripts
slug: Mozilla/Add-ons/WebExtensions/API/contentScripts
tags:
  - API
  - Add-ons
  - Extensions
  - Interface
  - WebExtensions
  - contentScripts
translation_of: Mozilla/Add-ons/WebExtensions/API/contentScripts
---
<div>{{AddonSidebar}}</div>

<p>Utilisez cette API pour enregistrer des scripts de contenu. L'enregistrement d'un script de contenu demande au navigateur d'insérer les scripts de contenu donnés dans des pages correspondant aux modèles d'URL donnés.</p>

<p>Cette API est très similaire à la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">"content_scripts"</a></code> du manifest.json, à l'exception de <code>"content_scripts"</code> , l'ensemble des scripts de contenu et des motifs associés est fixé au moment de l'installation. <span class="seoSummary">Avec l'API <code>contentScripts</code>, une extension peut enregistrer et  </span>désenregistrer des scripts au moment de l'exécution<span class="seoSummary">.</span></p>

<p>Pour utiliser l'API, appelez {{WebExtAPIRef("contentScripts.register()")}} en passant dans un objet définissant les scripts à enregistrer, les modèles d'URL, et d'autres options. Ceci retourne une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui est résolue avec un objet {{WebExtAPIRef("contentScripts.RegisteredContentScript")}}.</p>

<p>L'objet <code>RegisteredContentScript</code> représente les scripts enregistrés dans l'appel <code>register()</code> . Il définit une méthode <code>unregister()</code> que vous pouvez utiliser pour annuler l'inscription des scripts de contenu. Les scripts de contenu sont également désenregistrés automatiquement lorsque la page qui les a créés est détruite. Par exemple, s'ils sont enregistrés à partir de la page d'arrière-plan, ils seront automatiquement désenregistrés lorsque la page d'arrière-plan est détruite et s'ils sont enregistrés depuis une barre latérale ou une fenêtre contextuelle, ils seront automatiquement désinscrits.</p>

<p>Il n'y a pas de permission de l'API <code>contentScripts</code>, mais une extension doit disposer des <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôte</a> appropriées pour tous les modèles qu'elle transmet à <code>register()</code>.</p>

<h2 id="Types">Types</h2>

<dl>
 <dt>{{WebExtAPIRef("contentScripts.RegisteredContentScript")}}</dt>
 <dd>
 <p>Un objet de ce type est renvoyé par la fonction  {{WebExtAPIRef("contentScripts.register()")}}. Il représente les scripts de contenu enregistrés par cet appel et peut être utilisé pour annuler l'enregistrement du script de contenu.</p>
 </dd>
</dl>

<h2 id="Fonctions">Fonctions</h2>

<dl>
 <dt>{{WebExtAPIRef("contentScripts.register()")}}</dt>
 <dd>Enregistre les scripts de contenu donnés.</dd>
</dl>

<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>

<p>{{Compat("webextensions.api.contentScripts", 10, 1)}}</p>

<p> {{WebExtExamples("h2")}}</p>