Ich möchte wissen, wie mein Skript den Inhalt der Zwischenablage erkennen und beim Öffnen der Seite in ein Textfeld einfügen kann, ohne dass der Benutzer etwas eingibt. Wie geht das?
javascript
clipboard
paste
Gabriele Cirulli
quelle
quelle
Antworten:
window.clipboardData.getData('Text')
funktioniert in einigen Browsern. In vielen Browsern, in denen dies funktioniert, wird der Benutzer jedoch gefragt, ob die Webseite Zugriff auf die Zwischenablage haben soll oder nicht.quelle
Verwenden Sie die neue Zwischenablage-API über
navigator.clipboard
. Es kann folgendermaßen verwendet werden:Oder mit asynchroner Syntax:
const text = await navigator.clipboard.readText();
Beachten Sie, dass der Benutzer dadurch ein Dialogfeld mit einer Berechtigungsanforderung erhält, sodass keine lustigen Geschäfte möglich sind.
(HINWEIS: Dies funktioniert nicht, wenn es von der Konsole aus aufgerufen wird, erfordert jedoch eine direkte Benutzeraktion wie das Drücken einer Taste, danke @Artur)
Mehr dazu
Spec
quelle
setTimeout
und dann wieder auf die Seite klicken.Sie können verwenden
um den Inhalt der Zwischenablage des Benutzers im IE abzurufen. In anderen Browsern müssen Sie möglicherweise Flash verwenden, um den Inhalt abzurufen, da es keine Standardschnittstelle für den Zugriff auf die Zwischenablage gibt. Möglicherweise können Sie dieses Plugin Zero Clipboard ausprobieren
quelle
Im Folgenden erhalten Sie den ausgewählten Inhalt sowie die Aktualisierung der Zwischenablage.
Binden Sie die Element-ID an das Kopierereignis und rufen Sie den ausgewählten Text ab. Sie können den Text ersetzen oder ändern. Holen Sie sich die Zwischenablage und legen Sie den neuen Text fest. Um die genaue Formatierung zu erhalten, müssen Sie den Typ als "text / hmtl" festlegen. Sie können es auch anstelle des Elements an das Dokument binden.
quelle