Quiero actualizar la etiqueta de la insignia en el botón de acción de mi extensión de Chrome con la cantidad de elementos secundarios dentro de una página específica.
Por ejemplo, digamos que el div del cuerpo de example.com incluye una cantidad variable de elementos... Quiero actualizar mi número de placa cada vez que se carga example.com...
Aquí está mi código
fondo.js
chrome.alarms.create({ delayInMinutes: 0.1, periodInMinutes: 0.2 }); chrome.alarms.onAlarm.addListener((tabId, changeInfo, tab) => { if (changeInfo.status === "complete") { if (tab.url.includes("example.com")) { var count = 0; try { count = document.querySelector("body div").childElementCount; } catch { count = 0; } chrome.action.setBadgeText({ tabId: tabId, text: count }); chrome.action.setIcon({ path: getRandomIconPath(), }); } } });
manifiesto.json
{ "name": "my extension", "description": "my extension", "manifest_version": 3, "version": "1.2", "permissions": ["alarms", "activeTab", "scripting", "tabs", "contextMenus"], "background": { "service_worker": "background.js" }, "host_permissions": [ "*://example.com/*" ] }
Pero este código no funciona... ¿qué estoy haciendo mal?