¿Cómo copiar un elemento con JavaScript?

Para copiar texto al portapapeles con Javascript, puedes utilizar el método document.execCommand('copy')
. Sin embargo, debes tener en cuenta que este método está obsoleto y puede no funcionar en todos los navegadores.
Un método alternativo y más moderno es usar la API de Clipboard, específicamente el método navigator.clipboard.writeText()
. Este método es asíncrono y retorna una promesa. Aquí hay un ejemplo de cómo podrías usarlo:
navigator.clipboard.writeText('Texto para copiar al portapapeles')
.then(() => {
console.log('Texto copiado al portapapeles');
})
.catch(err => {
console.error('Error al copiar el texto: ', err);
});
Debes tener en cuenta que esta API puede requerir permisos del usuario para acceder al portapapeles, dependiendo del navegador y de la configuración de seguridad.
Además, hay que considerar que algunos navegadores pueden bloquear el acceso al portapapeles si la acción no se origina desde una interacción del usuario, como un clic. En esos casos, podrías tener que implementar una lógica adicional para manejar estas situaciones.