navigator.clipboard.readText() funktioniert in Firefox nicht

Lesezeit: 3 Minuten

Nima Keshavarzians Benutzeravatar
Nima Keshavarzian

Ich habe diesen Code zum Einfügen:

navigator.clipboard.readText().then(
  clipText => document.querySelector("#Note").innerText += clipText);

Aber es hat diesen Fehler:

Nicht erfasster TypeError: navigator.clipboard.readText ist keine Funktion

Helfen Sie mir, diesen Fehler zu beheben

  • Funktioniert gut, wenn ich es teste, es muss etwas anderes in Ihrem Code sein, das dies verursacht.

    – ProEvilz

    7. Mai 2021 um 18:42 Uhr

  • Als ich es in Stackoverflow getestet habe, hat es nicht funktioniert

    – Nima Keshavarzian

    7. Mai 2021 um 18:46 Uhr

  • Ich habe es in Codepen gemacht, es funktioniert definitiv. Sie müssen sicherstellen, dass Sie sich auf das Dokument konzentrieren, z. B. die weiße Seite.

    – ProEvilz

    7. Mai 2021 um 19:05 Uhr


  • Ich habe es mit console.log getestet, aber es hat nicht funktioniert

    – Nima Keshavarzian

    7. Mai 2021 um 19:19 Uhr

  • Verwenden Sie dies, um die Unterstützung in Ihrem Browser zu erkennen. typeof navigator.clipboard.readText !== "undefined"

    – David Clews

    13. März um 12:01 Uhr

Das Lesen der Zwischenablage in Firefox (Version 94, November 2021) scheint nicht zu funktionieren und löst einen Fehler aus:

var promise = navigator.clipboard.readText();

// Uncaught TypeError: navigator.clipboard.readText is not a function

In der Dokumentation zu MDN Web Docs wird empfohlen, die Berechtigung über die Berechtigungs-API zu erteilen:

Die Berechtigung „Clipboard-Read“ der Berechtigungs-API muss erteilt werden, bevor Sie Daten aus der Zwischenablage lesen können.

Aber clipboard-read scheint nicht unterstützt zu werden:

navigator.permissions.query({ name: "clipboard-read" });

// Uncaught TypeError: 'clipboard-read' is not a valid value for enumeration PermissionName.

Die einzige Möglichkeit, das Lesen (und Schreiben) der Zwischenablage zu aktivieren, besteht darin, sie zu aktivieren dom.events.testing.asyncClipboard auf dem Firefox-Client:

  1. Eingeben about:config in der Navigationsleiste
  2. Klicken Sie auf „Risiko akzeptieren und fortfahren“.
  3. Suchen dom.events.testing.asyncClipboard und eingestellt true

  • Wie können Sie diesen Bedarf testen und den Anwender beraten?

    – WinEunuuchs2Unix

    19. Okt. 2022 um 2:26

  • Ich musste auch einstellen dom.events.asyncClipboard.readText in meinem Fall wahr.

    – Bob

    11. März um 20:40 Uhr

Ich vermute, Sie testen es in Firefox, in diesem Fall:

Firefox unterstützt nur das Lesen der Zwischenablage in Browsererweiterungen mithilfe der Erweiterungsberechtigung „clipboardRead“.

https://developer.mozilla.org/en-US/docs/Web/API/Clipboard/readText#browser_compatibility

Wenngleich navigator.clipboard.readText() in Firefox nicht unterstützt wird, muss ich darauf hinweisen, dass Sie mit Firefox etwas in die Zwischenablage kopieren KÖNNEN, indem Sie einen anderen Ansatz verwenden, der keine ausdrückliche Aktivierung erfordert:

const copy = document.getElementById('copy');
const copy2 = document.getElementById('copy2');
const copyIt = document.getElementById('copyIt');

const copyToClipboard = (str) => {
  if (navigator 
      && navigator.clipboard 
      && navigator.clipboard.writeText)
    return navigator.clipboard.writeText(str);
    return Promise.reject("The Clipboard API is not available.");
};

copyIt.addEventListener('click', function() {
  copyToClipboard(copy.value);
  copy2.focus();
  copyIt.innerText = "Now right-click & paste into textarea above.";
});
  <textarea name="copy" id="copy" cols="30" rows="10" style="width:90vw;height:25px;">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad quos, quae a dicta. Quibusdam autem debitis beatae laboriosam nemo illo aliquid. Itaque, doloremque, dicta. Culpa officiis illo cum quisquam rem.</textarea>
<textarea name="copy2" id="copy2" cols="30" rows="10" style="width:90vw;height:25px;"></textarea>
<br><button id="copyIt">Copy It</button>

Ich wollte nur, dass jeder, der die gleichen Probleme mit Firefox hat wie der OP, das weiß War machbar…

  • Die Frage betraf Lektüre den Inhalt der Zwischenablage, der in Firefox nicht funktioniert, während Ihr Beispiel es beschreibt Inhalte schreiben die Zwischenablage, die tut Arbeite in Firefox. Sie können beispielsweise nicht etwas von einer anderen Stelle kopieren und dann den Inhalt der Zwischenablage auf Ihrer Seite anzeigen. (Danke trotzdem für das Beispiel.)

    – kca

    17. Februar um 9:39 Uhr

1451470cookie-checknavigator.clipboard.readText() funktioniert in Firefox nicht

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy