Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

247
Vistas
¿Puedo emular/provocar una falla al copiar al portapapeles desde JS en Chrome?

Tengo una página web con código JavaScript que copia cosas en el portapapeles de forma similar a lo que hace esta demostración: https://davidwalsh.name/demo/javascript-copy-clipboard.php

Mi código es algo como esto:

 // Within a listener that is triggered by a click on some button: var copiedText = "...something"; navigator.clipboard.writeText(copiedText).then( function() { console.log("Succesfully copied"); }, function() { console.log("FAILED to copy!!!!!!"); } );

Esto funciona bien, pero siempre tiene éxito. Necesito probar que el comportamiento es correcto cuando la copia falla por cualquier motivo.

¿Cómo puedo hacer que la copia falle a propósito para poder probar el comportamiento de mi código en esa situación?

Nunca recibo un aviso pidiéndome permiso para escribir en el portapapeles.

En Chrome, he intentado ir a la configuración del sitio y, en "Portapapeles", seleccionar "Bloquear", pero no hace nada (supongo que eso es solo para leer desde el portapapeles).

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Claro, solo proporcione un argumento no válido que generará una excepción durante el algoritmo de encadenamiento:

Tenga en cuenta que esta demostración funcionará en su propia página, pero el caso de éxito no funcionará en el espacio aislado iframe del fragmento de código de desbordamiento de pila (donde no hay permiso de portapapeles).

 function copyThenLog (input) { navigator.clipboard.writeText(input).then( () => console.log({success: true}), (ex) => { console.log({success: false}); console.error(ex); }, ); } document.querySelector('.success').addEventListener('click', () => { const input = 'hello world'; copyThenLog(input); }); document.querySelector('.fail').addEventListener('click', () => { const input = { toString () { throw new Error('Oops'); } }; copyThenLog(input); });
 <div class="success">Click me to succeed</div> <div class="fail">Click me to fail</div>

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda