Cuando un usuario selecciona una parte de la página con textos e imágenes con estilo, es posible copiar todo ese contenido (con imágenes y estilos) y pegarlo en MS Word o en un cliente de correo electrónico haciendo clic en "Copiar" en el contexto. menú.
¿Cómo es posible lograr el mismo resultado con javascript?
Hasta ahora, he encontrado soluciones para copiar solo texto sin formato o usando el comando document.execCommand("copy") depreciado.
¿Existe una solución que funcione para todos los navegadores modernos, incluido Firefox? Si tal función no se puede implementar por razones de seguridad o lo que sea, ¿podría alguien explicar por qué exactamente? Debido a que los usuarios copian contenido todo el tiempo, ¿por qué no se puede hacer con Javascript?
Editar: estoy tratando de mostrar una ventana emergente personalizada con un botón Copiar cuando el usuario selecciona algún contenido en la página. Ese botón debería poder copiar todo el estilo del contenido seleccionado, no solo texto sin formato. Al igual que el botón Copiar en el menú contextual del navegador o Ctrl+C
Según tengo entendido, quieres transformar mágicamente HTML, CSS y JavaScript a un formato de texto. Esto no es técnicamente posible.
Sí, es posible. Sugiero mirar la API Navigator.clipboard: https://developer.mozilla.org/en-US/docs/Web/API/Navigator/clipboard Puede obtener los elementos HTML seleccionados, hacer todo tipo de transformación en los datos y luego pegar los datos en el portapapeles. También se admiten múltiples formatos, como imágenes, HTML y texto simple. Tenga en cuenta que si va a copiar HTML y/o pegar imágenes, no funcionará en editores de texto simples, solo en editores como Word que admite formatos de pegado avanzados.