Ankündigung

Einklappen
Keine Ankündigung bisher.

Text in Clipboard Kopieren

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Text in Clipboard Kopieren

    Moin zusammen,

    ich würde gerne ein Text aus einem Input kopieren.
    An sich funktioniert es, allerdings wenn ich den Input von type="hidden" mache oder ihn ein style="visibility:hidden;width:0px" gebe, dann geht es wieder nicht.
    Mein aktueller HTML Code:
    HTML-Code:
    <input type="text" id="copyTarget" value="https://link/xyz?id=<?php echo $link; ?>" style="visibility:hidden;width:0px"><button id="copyButton">Kopieren</button>
    Mein Javascript dazu:
    Code:
    document.getElementById("copyButton").addEventListener("click", function() {
            copyToClipboard(document.getElementById("copyTarget"));
        });
    
        function copyToClipboard(elem) {
              // create hidden text element, if it doesn't already exist
            var targetId = "_hiddenCopyText_";
            var isInput = elem.tagName === "INPUT" || elem.tagName === "TEXTAREA";
            var origSelectionStart, origSelectionEnd;
            if (isInput) {
                // can just use the original source element for the selection and copy
                target = elem;
                origSelectionStart = elem.selectionStart;
                origSelectionEnd = elem.selectionEnd;
            } else {
                // must use a temporary form element for the selection and copy
                target = document.getElementById(targetId);
                if (!target) {
                    var target = document.createElement("textarea");
                    target.style.position = "absolute";
                    target.style.left = "-9999px";
                    target.style.top = "0";
                    target.id = targetId;
                    document.body.appendChild(target);
                }
                target.textContent = elem.textContent;
            }
            // select the content
            var currentFocus = document.activeElement;
            target.focus();
            target.setSelectionRange(0, target.value.length);
    
            // copy the selection
            var succeed;
            try {
                  succeed = document.execCommand("copy");
            } catch(e) {
                succeed = false;
            }
            // restore original focus
            if (currentFocus && typeof currentFocus.focus === "function") {
                currentFocus.focus();
            }
    
            if (isInput) {
                // restore prior selection
                elem.setSelectionRange(origSelectionStart, origSelectionEnd);
            } else {
                // clear temporary content
                target.textContent = "";
            }
            return succeed;
        }
    Frage also... Wie Kopiere ich etwas, was nicht zu sehen ist aus einem Input?

  • #2
    Wie Kopiere ich etwas, was nicht zu sehen ist aus einem Input?
    Gar nicht, da nicht möglich.
    https://developer.mozilla.org/de/doc...CSS/visibility

    Kommentar


    • #3
      Zitat von protestix Beitrag anzeigen
      Gar nicht, da nicht möglich.
      Wie "Gar nicht" ?
      Andere Webseiten haben doch auch eine Button worauf steht "Kopiere den Link" und zack hat man einen Link im Clipboard ?!

      Kommentar


      • #4
        Dann ist das Element aber nicht mit der Eigenschaft "hidden" versehen.
        Siehe Link und nutze Google für mehr Informationen darüber.

        Kommentar

        Lädt...
        X