Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

158
Views
window.onload no funciona en el complemento de Firefox a menos que la consola del desarrollador esté abierta

Estoy creando un complemento en Firefox Dev Edition (v100.0b7) y el script de fondo script.js no invoca window.onload . Solo funciona cuando la consola del desarrollador está abierta en Inspeccionar elemento y veo el mensaje que imprime en la consola. La función de carga está destinada a iniciar un oyente tan pronto como se carga la página, por lo que la ventana emergente del complemento (al hacer clic en el icono en la parte superior derecha) puede enviar una solicitud de contenido DOM. (Afaik, la ventana emergente tiene su propio DOM, por lo que no puede acceder directamente al DOM de la página). Puedo decir que no funciona cuando la consola de desarrollo está cerrada porque la ventana emergente no muestra ningún dato obtenido de la página DOM

Aquí están los archivos de script. El resto son HTML/CSS que funcionan como se esperaba:

manifiesto.json

 { "manifest_version": 2, "name": "Extension", "version": "1.0", "content_scripts": [ { "matches": [ "https://example.com" ], "js": [ "script.js" ] } ], "permissions": [ "storage", "activeTab" ], "browser_action": { "default_title": "Extension", "default_icon": "icon.png", "default_popup": "index.html" }, "browser_specific_settings": { "gecko": { "id": "example@example.com" } } }

guión.js

 // This script should run immediately when window finishes loading window.onload = function () { console.log("Loaded successfully"); browser.runtime.onMessage.addListener(messageHandler); };

complemento-ventana-popup/script.js

 // This script only runs when the popup is opened (user clicks top-right icon) window.onload = function () { browser.tabs.query({ currentWindow: true, active: true }) .then((tabs) => { for (const tab of tabs) { browser.tabs.sendMessage(tab.id, "message request") .then(responseHandler); } }); };
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!