Estoy tratando de crear una extensión de Chrome simple que tiene un botón en la ventana emergente, y cuando el usuario hace clic en ese botón, cambia parte del texto en esa ventana emergente. Esto es lo que tengo:
archivo popup.html
:
<!DOCTYPE html> <html> <head></head> <body> <button id="myButton">Button</button> <p id="myText">hello</p> <script src="popup.js"></script> </body> </html>
archivo popup.js
:
let myButton = document.getElementById("myButton"); myButton.addEventListener("click", async () => { let [tab] = await chrome.tabs.query({ active: true, currentWindow: true }); chrome.scripting.executeScript({ target: {tabId: tab.id}, // This is probably wrong??? function: doSomething, }); }); function doSomething() { console.log("button is clicked"); document.getElementById("myText").innerHtml = "foo bar"; }
Puedo ver "se hace clic en el botón" en la consola, pero no veo que el contenido de la ventana emergente cambie de "hola" a "foo bar". Sospecho que esto se debe a que el objetivo que usé en executeScript
es incorrecto, pero no estoy seguro de cuál es la forma correcta de solucionarlo. ¿Alguna idea?
Debería ser:
document.getElementById("myText").innerHTML = "foo bar";
en vez de:
document.getElementById("myText").innerHtml = "foo bar";