Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

155
Visualizações
Firefox: captureVisibleTab parece bloquearse

Estoy tratando de hacer una extensión de Firefox que agregará un botón para tomar una captura de pantalla de la pestaña activa. Cuando llamo a 'captureVisibleTab', la llamada parece colgarse: la función nunca ejecuta la siguiente línea. Código mínimo para mostrar el problema:

 let shotBtn = document.createElement("button"); shotBtn.innerHTML = "Shot"; shotBtn.onclick = function () { takeShot(); }; document.body.appendChild(leftBtn); async function takeShot() { leftBtn.innerHTML = "Start"; // This line executes. const shot = await browser.tabs.captureVisibleTab(); leftBtn.innerHTML = "Done"; // This line does not. }

Veo que el texto del botón cambia a "Inicio", pero no veo que cambie a "Listo".

Probé algunas variantes: elimine el 'esperar' y agregue el manejo "shot.then" en su lugar, y coloque la llamada captureVisibleTab directamente en el método onclick en lugar de un método asíncrono separado. Agregué el permiso "<all_urls>" en mi archivo de manifiesto, pero no estoy seguro de que se me haya otorgado el permiso. ¿Hay alguna forma de verificar esto?

Soy nuevo en JavaScript y las extensiones web en general, por lo que puede haber algún defecto fundamental en mi comprensión de cómo debería funcionar esta función asincrónica. ¿Es posible que algún recolector de basura esté tomando el objeto de función antes de que termine de ejecutarse? Si es así, ¿cómo puedo evitar esto en un método 'onclick'?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Debería haber leído un poco más profundamente antes de escribir mi pregunta. Estaba tratando de hacer lo anterior en un script de contenido, que no permite usar captureVisibleTab; tienes que hacer eso en un script de fondo. Si, como yo, eres un novato en desarrollo web y acabas de enterarte de que existe esta distinción, puedes leer sobre ella aquí .

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda