Estoy aprendiendo sobre la extensión del navegador de Google y me divierto con ella.
Tengo este problema en el que quería reemplazar un elemento de página web con imágenes y texto con otra imagen o texto. Está funcionando bien si esa es la única función que quería, pero quería que se implementara otra función, así que agregué una ventana emergente para tener varias casillas de verificación para activar o desactivar las funciones. Como estaba empezando a jugar con las casillas de verificación para habilitar esta función, solo afecta la página de extensión del navegador "popup.html" en lugar de la página web (intenté agregar una imagen en la ventana emergente y solo cambió en la ventana emergente). Intenté buscar soluciones en línea y leer la documentación y realmente no entiendo cómo resolverlo.
Noté que si no tengo la ventana emergente, la extensión funcionará en cualquier página web. Así que no estoy seguro de cómo efectuarlo directamente en una página web.
Esto es lo que tengo actualmente.
contenido.js
function willSmithMode() { let willSmithImages = [ //images here ]; //find element by tag name and replace const imgs = document.getElementsByTagName("img"); for (let i = 0; i < imgs.length; i++) { const randomImg = [Math.floor(Math.random() * willSmithImages.length)]; imgs[i].src = willSmithImages[randomImg]; } // more code here for other tags such as h1 or p console.log('Checked Will Smith'); } document.getElementById('RepTextAndImg').addEventListener('change', event => { willSmithMode(); });ventana emergente.html
<div class="form-check form-switch"> <input class="form-check-input" type="checkbox" name="settings" role="switch" id="RepTextAndImg" value="reptext" /> <label class="form-check-label" for="RepTextAndImg">Replace Text and Images</label> </div>manifiesto.json
... "content_scripts": [ { "matches": ["<all_urls>"], "js": ["content.js"] } ], "permissions": [ "storage", "tabs" ], "action": { "default_popup": "popup.html",tl; dr Quiero modificar el texto y las imágenes de las páginas web, pero tengo una ventana emergente para alternar varias funciones. Entonces, JavaScript solo afecta el popup.html en lugar de cualquier página web.