Estoy tratando de hacer un botón para copiar un enlace ( www.google.com ) al portapapeles, pero no funciona. mi código es:
<script type='text/javascript'> function myFunction() { /* Get the text field */ var copyText = document.getElementById("www.google.com"); /* Select the text field */ copyText.select(); copyText.setSelectionRange(0, 99999); /* For mobile devices */ /* Copy the text inside the text field */ navigator.clipboard.writeText(copyText.value); /* Alert the copied text */ alert("Copied link!"); } </script>Y el botón:
<button onclick='myFunction()'>Clik to copy the Link</button>intente esto con la función asíncrona y espere
async function copyGoogleLink(){ await navigator.clipboard.writeText('https://www.google.com') .then(() => console.log('Copied')); }use esto con Event Listener
Esto te ayudara
function copyToClipboard(text) { if (navigator.clipboard) { return navigator.clipboard.writeText(text); } const element = document.createElement('span'); element.textContent = text; element.style.whiteSpace = 'pre'; document.body.appendChild(element); const selection = window.getSelection(); const range = document.createRange(); selection.removeAllRanges(); range.selectNode(element); selection.addRange(range); document.execCommand('copy'); selection.removeAllRanges(); document.body.removeChild(element); }