diff options
Diffstat (limited to 'files/fr/web/api')
-rw-r--r-- | files/fr/web/api/clipboard_api/index.html | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/files/fr/web/api/clipboard_api/index.html b/files/fr/web/api/clipboard_api/index.html new file mode 100644 index 0000000000..d87dd0d03c --- /dev/null +++ b/files/fr/web/api/clipboard_api/index.html @@ -0,0 +1,61 @@ +--- +title: API Clipboard +slug: Web/API/Clipboard_API +translation_of: 'Web/API/Clipboard_API' +--- +<div>{{DefaultAPISidebar("Clipboard API")}}</div> + +<p>L'<strong>API Clipboard</strong> (en français : API Presse-papiers) fournit la possibilité de répondre aux commandes du presse-papiers (couper, copier et coller) ainsi que de lire et écrire sur le presse-papiers système de façon asynchrone. L'accès aux contenus du presse-papiers est protégé par l'<a href="/fr/docs/Web/API/Permissions_API">API Permissions</a> : la permission <code>clipboard-write</code> est donnée automatiquement aux pages lorsqu'elles sont dans l'onglet actif. La permission <code>clipboard-read</code> doit quant à elle être demandée, ce que vous pouvez faire en tentant de lire les données du presse-papiers.</p> + +<div class="notecard note"> +<p><strong>Note :</strong> Cette API <em>n'est pas disponible</em> dans les <a href="/fr/docs/Web/API/Web_Workers_API">Web Workers</a> (elle n'est pas exposée via {{domxref("WorkerNavigator")}}).</p> +</div> + +<p>Cette API est conçue pour remplacer l'accès au presse-papiers précédemment proposé via {{domxref("document.execCommand()")}}.</p> + +<h2 id="accessing_the_clipboard">Accéder au presse-papier</h2> + +<p>Au lieu de créer un objet <code>Clipboard</code> lors de l'instanciation, vous pouvez accéder au presse-papier du système avec la globale {{domxref("Navigator.clipboard")}} :</p> + +<pre class="brush: js">navigator.clipboard.readText().then( + clipText => document.querySelector(".editor").innerText += clipText);</pre> + +<p>Ce bout de code analyse le texte à partir du presse-papiers et l'insère après le premier élément trouvé comportant la classe <code>editor</code>. Puisque {{domxref("Clipboard.readText", "readText()")}} (sans oublier {{domxref("Clipboard.read", "read()")}}) retournent une chaîne vide si le contenu du presse-papier n'est pas textuel, ce code est sécurisé.</p> + +<h2 id="interfaces">Interfaces</h2> + +<dl> + <dt>{{domxref("Clipboard")}} {{securecontext_inline}}</dt> + <dd>Fournit une interface pour la lecture et l'écriture de texte et de données sur le presse-papiers du système. La spécification s'y réfère avec le terme "Async Clipboard API".</dd> + <dt>{{domxref("ClipboardEvent")}} {{securecontext_inline}}</dt> + <dd>Représente les évènements fournissant l'information relative à la modification du presse-papiers, qui peut être l'évènement {{domxref("Element/cut_event", "cut")}}, {{domxref("Element/copy_event", "copy")}} ou {{domxref("Element/paste_event", "paste")}}. La spécification s'y réfère avec le terme "Clipboard Event API".</dd> + <dt>{{domxref("ClipboardItem")}} {{securecontext_inline}}</dt> + <dd>Représente un format de terme unique utilisé pour lire ou écrire des données.</dd> +</dl> + +<h2 id="specifications">Spécifications</h2> + +<p>{{Specifications("api.Clipboard")}}</p> + +<h2 id="browser_compatibility">Compatibilité des navigateurs</h2> + +<h3 id="clipboard">Clipboard</h3> + +<p>{{Compat("api.Clipboard")}}</p> + +<h3 id="clipboardevent">ClipboardEvent</h3> + +<p>{{Compat("api.ClipboardEvent")}}</p> + +<h3 id="clipboarditem">ClipboardItem</h3> + +<p>{{Compat("api.ClipboardItem")}}</p> + +<h2 id="see_also">Voir aussi</h2> + +<ul> + <li><a href="https://async-clipboard-api.glitch.me/">Démonstration de l'API Async Clipboard sur Glitch (en anglais)</a></li> + <li><a href="https://web.dev/image-support-for-async-clipboard/"><i lang="en">Image support for Async Clipboard article</i> (en anglais)</a></li> + <li><a href="/fr/docs/Web/API/Permissions_API">API Permissions</a></li> + <li><a href="/fr/docs/Web/API/Permissions_API/Using_the_Permissions_API">Utiliser l'API Permissions</a></li> +</ul> |