This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Copy 2 Clipboard mit Feedback
#1
Hallo,

ich hab nur was kleines - aber ich komme mit meinen rudimentären JS-Kenntnissen leider nicht weiter Blush

Ich möchte gern einen definierten Text in die Zwischenablage nehmen und dem Klicker ein Feedback geben, dass die Zeile nun in der Zwischenablage ist.
Am einfachsten wäre das mit einem kleinem "✓" welcher im Buttontext am Ende mit angezeigt werden sollte, allerdings nur für 1-3 sekunden...
jedoch kann ich bei der Funktion nicht mit "this.innerText" in Verbindung mit einer setTimeout Funktion arbeiten...
setTimeout("this.innerText = 'Copy ✓'", 3000);
<script>
function copy2Clipboard(str) {
ta = document.createElement('textarea');
ta.value = str;
document.body.appendChild(ta);
ta.select();
document.execCommand('copy');
document.body.removeChild(ta);

};
</script>

<button onclick="copyStringToClipboard('Lorem ipsum dolor sit amet')">Copy</button>
Zitieren
#2
Hallo @DSCA

(11.05.2023, 11:20)DSCA schrieb: jedoch kann ich bei der Funktion nicht mit "this.innerText" in Verbindung mit einer setTimeout Funktion arbeiten...


Du kannst hier nicht mit "this.innerText" arbeiten, denn das this Objekt is in diesem Fall das Globale Objekt.

Du musst also den Button explizit selektieren, bevor du den Text darauf anpassen kannst.

(Kleiner Tip: Verwende in der "setTimeout" lieber eine Funktion anstatt einen Funktionskörper als Sting. Das ist sicherer und JavaScript kann das auch besser optimieren.
Als Lösung markieren Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste