Estoy usando el siguiente script: funciona localmente en Visual Studio. pero en el servidor tira
"No se puede leer la propiedad 'escribir texto' de indefinido"
function GetCopyText(thislink) { var Content = thislink.parentNode.parentNode.parentNode.parentElement.parentElement.parentElement.parentElement.children[2].children[0].children[0].innerText; navigator.clipboard.writeText(Content).then(function () { // alert('Async: Copying to clipboard was successful!'); }, function (err) { console.error('Async: Could not copy text: ', err); }); }Cree el protocolo https y el navegador debería ejecutarlo.
Tal vez sea demasiado tarde (y el código de un par de sitios se ve así). pero el tipo no hace eso:
var Content = thislink. parentNode.parentNode.parentNode. parentElement.parentElement.parentElement.parentElement. children[2].children[0].children[0]. innerText;La función de portapapeles está disponible solo en contextos seguros (HTTPS) , en algunos o en todos los navegadores compatibles.
https://developer.mozilla.org/en-US/docs/Web/API/Clipboard
gracias wade
Sugerencias: es mejor verificar el valor de navigator.clipboard y continuar solo si existe. Esto proporciona una buena experiencia de usuario y en organizaciones grandes, ya que muchos desarrolladores ejecutarán la interfaz de usuario en modo local para realizar pruebas. Les ahorra tiempo de depuración y luego descubren que navigator.clipboard no está disponible en modo local sin https.