temas play google extensions extensiones extension extencion chrome aplicaciones google-chrome google-chrome-extension

google-chrome - play - extensiones chrome android



(Extensión de Chrome) Cómo abrir pragmáticamente la ventana emergente desde background.html (4)

Es imposible abrir la ventana de extensión sin que un usuario haga clic en ella ... Sin embargo, puede hacer que la página emergente de extensión se abra en una nueva pestaña de la siguiente manera:

1) Establezca su página de fondo en su archivo de manifiesto ...

"background_page": "background.html",

Aquí es donde ejecutará el código para ver si se detecta la etiqueta especial ... las páginas de fondo pueden ejecutar constantemente el código en segundo plano, y depende de usted establecer un ciclo de repetición para verificar si la condición de la variable es verdadera cada cierto tiempo. a menudo...

2) Habilitar permisos de pestañas en su archivo de manifiesto ...

"permissions": [ "tabs" ],

Este permiso es necesario para el paso 3 (permite que la página de fondo abra una nueva pestaña)

3) En la página de fondo, llame a create y apunte a la url emergente de extensión.

if(condition == true){ chrome.tabs.create({url:"popup.html"}); }

¡Gracias por adelantado!

Lo que quiero lograr es abrir la ventana emergente cuando mi extensión detecta una etiqueta especial en una página web. Después de buscar durante un tiempo, parece que la ventana emergente solo se puede abrir cuando el usuario hace clic en la extensión. ¿Es verdad?

¿O podría obtener la ubicación del icono de mi extensión en el navegador? Tal vez podría dibujar una ventana y mostrarla debajo del icono de la extensión para que se vea igual que la ventana emergente.


No puede hacer clic falso en la acción del navegador, pero aún puede abrir la página emergente desde la secuencia de comandos de fondo como lo hace normalmente la ventana emergente y funcionará como se espera. Así, por ejemplo, la página html de la acción de su navegador es "popup.html"

window.open("popup.html", "extension_popup", "width=300,height=400,status=no,scrollbars=yes,resizable=no");

Nota: solo puede llamarlo desde el script de fondo (página de evento). Por lo tanto, debe registrar el script de fondo en su archivo de manifiesto y agregar un controlador de eventos, que abriría la ventana emergente. Puede leer más sobre las páginas de eventos aquí https://developer.chrome.com/extensions/event_pages


Si por ventana emergente te refieres a la ventana emergente de acción del navegador, entonces tienes razón, no hay forma de abrirla programáticamente.

Puede insertar lo que necesite de su ventana emergente a pedido directamente en una página a través de un script de contenido . Creo que esta sería la mejor solución.

Si tu ventana emergente no contiene nada sofisticado, tal vez las notificaciones de escritorio sean suficientes para ti.

Crear una nueva ventana y colocarla debajo de la barra de url sería una solución bastante incómoda y no muy fácil de usar.


Este tipo quiere un efecto opuesto y no puede abrir su ventana emergente. Eche un vistazo a su código para abrir su página emergente;)