Estoy trabajando en una extensión del navegador y necesito un código específico para ejecutar cuando se carga la nueva ventana. El siguiente código funciona perfectamente en Chrome/Edge:
window.addEventListener('load', (event) => { handle_data(); });Este evento nunca se activa en la versión de Firefox. Alternativamente, probé:
window.onload = handle_data;Pero esto se llama antes de que se cargue el DOM de la página. ¿Alguna idea de por qué esto es un problema en Firefox?
EDITAR: El script se ejecuta usando lo siguiente:
function open_tab() { chrome.tabs.create({ url: "https://www.test.ca/apd/myad", active: false }, function (tab) { chrome.tabs.executeScript(tab.id, { file: "manage_content_script.js" }); }); }Y se llama al hacer clic en la extensión, usando el siguiente código en background.js:
if (msg.content == "clicked") { chrome.tabs.executeScript(null, { file: "dom_script.js" }); open_tab(); }¿Has probado DOMContentLoaded ?
window.addEventListener('DOMContentLoaded', (event) => { console.log('DOM fully loaded and parsed'); });Consulte: https://developer.mozilla.org/en-US/docs/Web/API/Window/DOMContentLoaded_event