chrome.webviewTag

Descripción

Usa la etiqueta webview para cargar de forma activa contenido en vivo de la Web a través de la red y, luego, incorporarlo a tu app de Chrome. Tu app puede controlar la apariencia de webview e interactuar con el contenido web, iniciar navegaciones en una página web incorporada, reaccionar a los eventos de error que ocurren en ella y mucho más (consulta Uso).

Permisos

webview

Tipos

ClearDataOptions

Son las opciones que determinan qué datos debe borrar clearData.

Propiedades

  • desde

    número opcional

    Datos claros acumulados a partir de esta fecha, representados en milisegundos desde la época (se puede acceder a ellos a través del método getTime del objeto Date de JavaScript). Si no está presente, el valor predeterminado es 0 (que quitaría todos los datos de navegación).

ClearDataTypeSet

Es un conjunto de tipos de datos. Las propiedades faltantes se interpretan como false.

Propiedades

  • appcache

    booleano opcional

    Appcaches de sitios web

  • Almacenamiento en caché

    booleano opcional

    Chrome 44 y versiones posteriores

    Desde Chrome 43 La caché del navegador Nota: Cuando quitas datos, se borra toda la caché, no solo el rango que especificas.

  • galletas

    booleano opcional

    Son las cookies de la partición.

  • fileSystems

    booleano opcional

    Sistemas de archivos de sitios web

  • indexedDB

    booleano opcional

    Datos de IndexedDB de los sitios web.

  • localStorage

    booleano opcional

    Datos de almacenamiento local de los sitios web

  • persistentCookies

    booleano opcional

    Chrome 58 y versiones posteriores

    Son las cookies persistentes de la partición.

  • sessionCookies

    booleano opcional

    Chrome 58 y versiones posteriores

    Son las cookies de sesión de la partición.

  • webSQL

    booleano opcional

    Datos de WebSQL de los sitios web.

ContentScriptDetails

Chrome 44 y versiones posteriores

Son los detalles de la secuencia de comandos de contenido que se insertará. Consulta la documentación de las secuencias de comandos de contenido para obtener más detalles.

Propiedades

  • all_frames

    booleano opcional

    Si all_frames es true, esto implica que el código JavaScript o CSS se debe insertar en todos los marcos de la página actual. De forma predeterminada, all_frames es false, y el código JavaScript o CSS solo se inyecta en el marco superior.

  • css

    InjectionItems opcional

    Es el código CSS o una lista de archivos CSS que se insertarán en las páginas coincidentes. Se insertan en el orden en que aparecen, antes de que se construya o muestre cualquier DOM para la página.

  • exclude_globs

    string[] opcional

    Se aplica después de las coincidencias para excluir las URLs que coinciden con este comodín. Se diseñó para emular la palabra clave @exclude de Greasemonkey.

  • exclude_matches

    string[] opcional

    Excluye las páginas en las que, de lo contrario, se insertaría este script de contenido.

  • include_globs

    string[] opcional

    Se aplica después de las coincidencias para incluir solo las URLs que también coinciden con este comodín. Se diseñó para emular la palabra clave @include de Greasemonkey.

  • js

    InjectionItems opcional

    Es el código JavaScript o una lista de archivos JavaScript que se insertarán en las páginas coincidentes. Se insertan en el orden en que aparecen.

  • match_about_blank

    booleano opcional

    Indica si se debe insertar la secuencia de comandos de contenido en about:blank y about:srcdoc. Los secuencias de comandos de contenido solo se insertarán en las páginas cuando uno de los patrones declarados en el campo matches coincida con su URL heredada. La URL de herencia es la URL del documento que creó el marco o la ventana. No se pueden insertar secuencias de comandos de contenido en los marcos de zona de pruebas.

  • coincide con

    string[]

    Especifica en qué páginas se insertará este script de contenido.

  • nombre

    string

    Nombre del script de contenido que se inyectará.

  • run_at

    RunAt opcional

    Es el momento más cercano en el que se inyectará el código JavaScript o CSS en la pestaña. El valor predeterminado es "document_idle".

ContentWindow

Es el identificador de mensajería de una ventana de invitado.

Propiedades

  • postMessage

    void

    Publica un mensaje en el contenido web incorporado, siempre y cuando este muestre una página del origen de destino. Este método está disponible una vez que se completa la carga de la página. Espera el evento contentload y, luego, llama al método.

    El invitado podrá enviar respuestas al incorporador publicando mensajes en event.source en el evento de mensaje que reciba.

    Esta API es idéntica a la API de postMessage de HTML5 para la comunicación entre páginas web. El incorporador puede escuchar las respuestas agregando un objeto de escucha de eventos message a su propio iframe.

    La función postMessage se ve de la siguiente manera:

    (message: any, targetOrigin: string) => {...}

    • mensaje

      cualquiera

      Es el objeto del mensaje que se enviará al huésped.

    • targetOrigin

      string

      Especifica cuál debe ser el origen de la ventana secundaria para que se envíe el evento.

ContextMenuCreateProperties

Chrome 44 y versiones posteriores

Propiedades

  • activado

    booleano opcional

    Es el estado inicial de una casilla de verificación o un elemento de botón de radio: verdadero si está seleccionado y falso si no lo está. Solo se puede seleccionar un elemento de radio a la vez en un grupo determinado de elementos de radio.

  • contextos

    [ContextType, ...ContextType[]] opcional

    Es la lista de contextos en los que aparecerá este elemento de menú. Si no se especifica, el valor predeterminado es ['page'].

  • documentUrlPatterns

    string[] opcional

    Te permite restringir el elemento para que se aplique solo a los documentos cuya URL coincida con uno de los patrones proporcionados. (Esto también se aplica a los fotogramas). Para obtener detalles sobre el formato de un patrón, consulta Patrones de coincidencia.

  • habilitado

    booleano opcional

    Indica si este elemento del menú contextual está habilitado o inhabilitado. La configuración predeterminada es true.

  • id

    cadena opcional

    Es el ID único que se asignará a este elemento. Es obligatorio para las páginas de eventos. No puede ser igual a otro ID de esta extensión.

  • parentId

    cadena | número opcional

    ID de un elemento de menú principal, lo que convierte al elemento en secundario de un elemento agregado anteriormente.

  • targetUrlPatterns

    string[] opcional

    Es similar a documentUrlPatterns, pero te permite filtrar en función del atributo src de las etiquetas img/audio/video y el atributo href de las etiquetas de anclaje.

  • título

    cadena opcional

    Es el texto que se mostrará en el elemento. Este parámetro es obligatorio, a menos que type sea "separator". Cuando el contexto es "selection", puedes usar %s dentro de la cadena para mostrar el texto seleccionado. Por ejemplo, si el valor de este parámetro es "Traduce "%s" al latín de cerdo" y el usuario selecciona la palabra "cool", el elemento del menú contextual para la selección es "Traduce "cool" al latín de cerdo".

  • tipo

    ItemType opcional

    Es el tipo de elemento de menú. El valor predeterminado es "normal" si no se especifica.

  • onclick

    void optional

    Es una función a la que se llamará cuando se haga clic en el elemento de menú.

    La función onclick se ve de la siguiente manera:

    (info: OnClickData) => {...}

    • información

      Es información sobre el elemento en el que se hizo clic y el contexto en el que se produjo el clic.

ContextMenus

Chrome 44 y versiones posteriores

Propiedades

  • onShow

    Event<functionvoidvoid>

    Se activa antes de mostrar un menú contextual en este webview. Se puede usar para inhabilitar este menú contextual llamando a event.preventDefault().

    La función onShow.addListener se ve de la siguiente manera:

    (callback: function) => {...}

    • callback

      función

      El parámetro callback se ve de la siguiente manera:

      (event: object) => void

      • evento

        objeto

        • preventDefault

          void

          Llama a este método para evitar que se muestre el menú contextual.

          La función preventDefault se ve de la siguiente manera:

          () => {...}

  • create

    void

    Crea un elemento nuevo del menú contextual. Ten en cuenta que, si se produce un error durante la creación, es posible que no lo descubras hasta que se active la devolución de llamada de creación (los detalles estarán en runtime.lastError).

    La función create se ve de la siguiente manera:

    (createProperties: object, callback?: function) => {...}

    • createProperties

      objeto

      Propiedades que se usan para crear el elemento

    • callback

      función opcional

      El parámetro callback se ve de la siguiente manera:

      () => void

    • muestra

      cadena | número

      Es el ID del elemento recién creado.

  • quitar

    void

    Quita un elemento del menú contextual.

    La función remove se ve de la siguiente manera:

    (menuItemId: string | number, callback?: function) => {...}

    • menuItemId

      cadena | número

      Es el ID del elemento del menú contextual que se quitará.

    • callback

      función opcional

      El parámetro callback se ve de la siguiente manera:

      () => void

  • removeAll

    void

    Quita todos los elementos del menú contextual agregados a este webview.

    La función removeAll se ve de la siguiente manera:

    (callback?: function) => {...}

    • callback

      función opcional

      El parámetro callback se ve de la siguiente manera:

      () => void

  • update

    void

    Actualiza un elemento de menú contextual creado anteriormente.

    La función update se ve de la siguiente manera:

    (id: string | number, updateProperties: object, callback?: function) => {...}

    • id

      cadena | número

      Es el ID del elemento que se actualizará.

    • updateProperties

      objeto

      Son las propiedades que se actualizarán. Acepta los mismos valores que la función de creación.

    • callback

      función opcional

      El parámetro callback se ve de la siguiente manera:

      () => void

ContextMenuUpdateProperties

Chrome 44 y versiones posteriores

Propiedades

  • activado

    booleano opcional

    Estado de un elemento de casilla de verificación o de botón de selección: verdadero si está seleccionado y falso si no lo está. Solo se puede seleccionar un elemento de radio a la vez en un grupo determinado de elementos de radio.

  • contextos

    [ContextType, ...ContextType[]] opcional

    Es la lista de contextos en los que aparecerá este elemento de menú.

  • documentUrlPatterns

    string[] opcional

    Te permite restringir el elemento para que se aplique solo a los documentos cuya URL coincida con uno de los patrones proporcionados. (Esto también se aplica a los fotogramas). Para obtener detalles sobre el formato de un patrón, consulta Patrones de coincidencia.

  • habilitado

    booleano opcional

    Indica si este elemento del menú contextual está habilitado o inhabilitado.

  • parentId

    cadena | número opcional

    ID de un elemento de menú principal, lo que convierte al elemento en secundario de un elemento agregado anteriormente. Nota: No puedes cambiar un elemento para que sea secundario de uno de sus propios descendientes.

  • targetUrlPatterns

    string[] opcional

    Es similar a documentUrlPatterns, pero te permite filtrar en función del atributo src de las etiquetas img/audio/video y el atributo href de las etiquetas de anclaje.

  • título

    cadena opcional

    Es el texto que se mostrará en el elemento.

  • tipo

    ItemType opcional

    Es el tipo de elemento de menú.

  • onclick

    void optional

    Es una función a la que se llamará cuando se haga clic en el elemento de menú.

    La función onclick se ve de la siguiente manera:

    (info: OnClickData) => {...}

    • información

      Es información sobre el elemento en el que se hizo clic y el contexto en el que se produjo el clic.

ContextType

Chrome 44 y versiones posteriores

Son los diferentes contextos en los que puede aparecer un menú. Especificar "all" equivale a la combinación de todos los demás contextos.

Enum

"all"

"page"

"frame"

"selection"

"link"

"editable"

"image"

"video"

"audio"

DialogController

Interfaz adjunta a eventos del DOM dialog.

Propiedades

  • cancelar

    void

    Rechaza el diálogo. Equivale a hacer clic en Cancelar en un diálogo de confirm o prompt.

    La función cancel se ve de la siguiente manera:

    () => {...}

  • Aceptar

    void

    Acepta el diálogo. Equivale a hacer clic en Aceptar en un diálogo de alert, confirm o prompt.

    La función ok se ve de la siguiente manera:

    (response?: string) => {...}

    • respuesta

      cadena opcional

      Es la cadena de respuesta que se proporciona al invitado cuando se acepta un diálogo de prompt.

DialogMessageType

Pendiente

Es el tipo de diálogo modal que solicitó el invitado.

Enum

"alert"

"confirm"

"prompt"

DownloadPermissionRequest

Es el tipo de objeto request que acompaña a un evento download permissionrequest del DOM.

Propiedades

  • requestMethod

    string

    Es el tipo de solicitud HTTP (p.ej., GET) asociado a la solicitud de descarga.

  • url

    string

    Es la URL de descarga solicitada.

  • allow

    void

    Permite la solicitud de permiso.

    La función allow se ve de la siguiente manera:

    () => {...}

  • deny

    void

    Rechaza la solicitud de permiso. Este es el comportamiento predeterminado si no se llama a allow.

    La función deny se ve de la siguiente manera:

    () => {...}

ExitReason

Pendiente

Cadena que indica el motivo de la salida.

Enum

"normal"

"abnormal"

"crashed"

"killed"

"oom killed"

"oom"

"no se pudo iniciar"

"integrity failure"

FileSystemPermissionRequest

Es el tipo de objeto request que acompaña a un evento filesystem permissionrequest del DOM.

Propiedades

  • url

    string

    Es la URL del iframe que solicita acceso al sistema de archivos local.

  • allow

    void

    Permite la solicitud de permiso.

    La función allow se ve de la siguiente manera:

    () => {...}

  • deny

    void

    Rechaza la solicitud de permiso.

    La función deny se ve de la siguiente manera:

    () => {...}

FindCallbackResults

Contiene todos los resultados de la solicitud de búsqueda.

Propiedades

  • activeMatchOrdinal

    número

    Número ordinal de la coincidencia actual.

  • cancelado

    booleano

    Indica si se canceló esta solicitud de búsqueda.

  • numberOfMatches

    número

    Es la cantidad de veces que se encontró searchText en la página.

  • selectionRect

    Describe un rectángulo alrededor de la coincidencia activa en coordenadas de pantalla.

FindOptions

Son las opciones de la solicitud de búsqueda.

Propiedades

  • hacia atrás

    booleano opcional

    Es una marca para encontrar coincidencias en orden inverso. El valor predeterminado es false.

  • matchCase

    booleano opcional

    Es una marca para que coincida con la distinción entre mayúsculas y minúsculas. El valor predeterminado es false.

FullscreenPermissionRequest

Chrome 43 y versiones posteriores

Es el tipo de objeto request que acompaña a un evento fullscreen permissionrequest del DOM.

Propiedades

  • origin

    string

    Es el origen del iframe dentro del webview que inició la solicitud de pantalla completa.

  • allow

    void

    Permite la solicitud de permiso.

    La función allow se ve de la siguiente manera:

    () => {...}

  • deny

    void

    Rechaza la solicitud de permiso.

    La función deny se ve de la siguiente manera:

    () => {...}

GeolocationPermissionRequest

Es el tipo de objeto request que acompaña a un evento geolocation permissionrequest del DOM.

Propiedades

  • url

    string

    Es la URL del iframe que solicita acceso a los datos de ubicación geográfica.

  • allow

    void

    Permite la solicitud de permiso.

    La función allow se ve de la siguiente manera:

    () => {...}

  • deny

    void

    Rechaza la solicitud de permiso. Este es el comportamiento predeterminado si no se llama a allow.

    La función deny se ve de la siguiente manera:

    () => {...}

HidPermissionRequest

Chrome 125 y versiones posteriores

Es el tipo de objeto request que acompaña a un evento hid permissionrequest del DOM.

Propiedades

  • url

    string

    Es la URL del iframe que solicita acceso a la API de HID.

  • allow

    void

    Permite la solicitud de permiso.

    La función allow se ve de la siguiente manera:

    () => {...}

  • deny

    void

    Rechaza la solicitud de permiso. Este es el comportamiento predeterminado si no se llama a allow.

    La función deny se ve de la siguiente manera:

    () => {...}

InjectDetails

Son los detalles de la secuencia de comandos o el CSS que se insertarán. Se debe configurar el código o la propiedad del archivo, pero no ambos al mismo tiempo.

Propiedades

  • código

    cadena opcional

    Es el código de JavaScript o CSS que se insertará.

    Advertencia: Ten cuidado cuando uses el parámetro code. El uso incorrecto puede exponer tu app a ataques de secuencias de comandos entre sitios.

  • archivo

    cadena opcional

    Archivo CSS o JavaScript que se inyectará.

InjectionItems

Chrome 44 y versiones posteriores

Es el tipo de elemento de inserción: código o conjunto de archivos.

Propiedades

  • código

    cadena opcional

    Es el código JavaScript o CSS que se insertará en las páginas coincidentes.

  • archivos

    string[] opcional

    Es la lista de archivos JavaScript o CSS que se insertarán en las páginas coincidentes. Se insertan en el orden en que aparecen en este array.

LoadAbortReason

Pendiente

Es una cadena que indica qué tipo de anulación se produjo. No se garantiza que esta cadena no deje de ser compatible con versiones anteriores entre lanzamientos. No debes analizar su contenido ni actuar en función de él. También es posible que, en algunos casos, se informe un error que no se encuentre en esta lista.

Enum

"ERR_ABORTED"

"ERR_INVALID_URL"

"ERR_DISALLOWED_URL_SCHEME"

"ERR_BLOCKED_BY_CLIENT"

"ERR_ADDRESS_UNREACHABLE"

"ERR_EMPTY_RESPONSE"

"ERR_FILE_NOT_FOUND"

"ERR_UNKNOWN_URL_SCHEME"

LoadPluginPermissionRequest

Es el tipo de objeto request que acompaña a un evento loadplugin permissionrequest del DOM.

Propiedades

  • identificador

    string

    Es la cadena de identificador del complemento.

  • nombre

    string

    Es el nombre visible del complemento.

  • allow

    void

    Permite la solicitud de permiso. Este es el comportamiento predeterminado si no se llama a deny.

    La función allow se ve de la siguiente manera:

    () => {...}

  • deny

    void

    Rechaza la solicitud de permiso.

    La función deny se ve de la siguiente manera:

    () => {...}

MediaPermissionRequest

Es el tipo de objeto request que acompaña a un evento media permissionrequest del DOM.

Propiedades

  • url

    string

    Es la URL del iframe que solicita acceso a los medios del usuario.

  • allow

    void

    Permite la solicitud de permiso.

    La función allow se ve de la siguiente manera:

    () => {...}

  • deny

    void

    Rechaza la solicitud de permiso. Este es el comportamiento predeterminado si no se llama a allow.

    La función deny se ve de la siguiente manera:

    () => {...}

NewWindow

Interfaz adjunta a eventos del DOM newwindow.

Propiedades

  • adjuntar

    void

    Adjunta la página de destino solicitada a un elemento webview existente.

    La función attach se ve de la siguiente manera:

    (webview: object) => {...}

    • webview

      objeto

      Es el elemento webview al que se debe adjuntar la página de destino.

  • descartar

    void

    Cancela la solicitud de ventana nueva.

    La función discard se ve de la siguiente manera:

    () => {...}

PermissionType

Pendiente

Es el tipo de permiso que se solicita.

Enum

"media"

"geolocation"

"pointerLock"

"download"

"loadplugin"

"filesystem"

"fullscreen"

"hid"

PointerLockPermissionRequest

Es el tipo de objeto request que acompaña a un evento pointerLock permissionrequest del DOM.

Propiedades

  • lastUnlockedBySelf

    booleano

    Indica si el fotograma solicitante fue el cliente más reciente en mantener el bloqueo del puntero.

  • url

    string

    Es la URL del iframe que solicita el bloqueo del puntero.

  • userGesture

    booleano

    Indica si se solicitó el bloqueo del puntero como resultado de un gesto de entrada del usuario.

  • allow

    void

    Permite la solicitud de permiso.

    La función allow se ve de la siguiente manera:

    () => {...}

  • deny

    void

    Rechaza la solicitud de permiso. Este es el comportamiento predeterminado si no se llama a allow.

    La función deny se ve de la siguiente manera:

    () => {...}

SelectionRect

Describe un rectángulo en coordenadas de pantalla.

La semántica de contención es similar a la de un array, es decir, la coordenada (left, top) se considera contenida por el rectángulo, pero la coordenada (left + width, top) no.

Propiedades

  • alto

    número

    Altura del rectángulo.

  • izquierda

    número

    Distancia desde el borde izquierdo de la pantalla hasta el borde izquierdo del rectángulo.

  • superior

    número

    Distancia desde el borde superior de la pantalla hasta el borde superior del rectángulo.

  • ancho

    número

    Ancho del rectángulo.

StopFindingAction

Pendiente

Determina qué hacer con la partida activa después de que finaliza la sesión de búsqueda. clear borrará el resaltado sobre la coincidencia activa; keep mantendrá resaltada la coincidencia activa; activate mantendrá resaltada la coincidencia activa y simulará un clic del usuario en esa coincidencia. La acción predeterminada es keep.

Enum

"clear"

"keep"

"activar"

WebRequestEventInterface

Chrome 44 y versiones posteriores

Interfaz que proporciona acceso a los eventos de webRequest en la página de invitado. Consulta la API de extensiones chrome.webRequest para obtener detalles sobre el ciclo de vida de webRequest y los conceptos relacionados. Nota: El evento chrome.webRequest.onActionIgnored no se admite en las vistas web.

Para ilustrar cómo difiere el uso de la API de webRequest de las extensiones, considera el siguiente código de ejemplo que bloquea cualquier solicitud de invitado para las URLs que coinciden con *://www.evil.com/*:

webview.request.onBeforeRequest.addListener(
  function(details) { return {cancel: true}; },
  {urls: ["*://www.evil.com/*"]},
  ["blocking"]);

Además, esta interfaz admite reglas webRequest declarativas a través de los eventos onRequest y onMessage. Consulta declarativeWebRequest para obtener detalles de la API.

Ten en cuenta que las condiciones y las acciones para las webRequests de WebView declarativas deben crearse a partir de sus contrapartes de chrome.webViewRequest.*. En el siguiente ejemplo de código, se bloquean de forma declarativa todas las solicitudes a "example.com" en la WebView myWebview:

var rule = {
  conditions: [
    new chrome.webViewRequest.RequestMatcher({ url: { hostSuffix: 'example.com' } })
  ],
  actions: [ new chrome.webViewRequest.CancelRequest() ]
};
myWebview.request.onRequest.addRules([rule]);

WindowOpenDisposition

Pendiente

Es la disposición solicitada de la ventana nueva.

Enum

"ignore"

"save_to_disk"

"current_tab"

"new_background_tab"

"new_foreground_tab"

"new_window"

"new_popup"

ZoomMode

Chrome 43 y versiones posteriores

Define cómo se controla el zoom en webview.

Enum

"Por origen"
Los cambios de zoom persistirán en el origen de la página con zoom, es decir, todas las demás vistas web de la misma partición a las que se navegue a ese mismo origen también tendrán zoom. Además, los cambios de zoom de per-origin se guardan con el origen, lo que significa que, cuando se navega a otras páginas del mismo origen, todas se mostrarán con el mismo factor de zoom.

"por vista"
Los cambios de zoom solo se aplican en esta vista web, y los cambios de zoom en otras vistas web no afectarán el zoom de esta vista web. Además, los cambios de zoom de per-view se restablecen en la navegación. Navegar por una WebView siempre cargará las páginas con sus factores de zoom por origen (dentro del alcance de la partición).

"disabled"
Inhabilita todo el zoom en la WebView. El contenido volverá al nivel de zoom predeterminado y se ignorarán todos los intentos de cambiar el zoom.

Propiedades

contentWindow

Es una referencia de objeto que se puede usar para publicar mensajes en la página de invitado.

contextMenus

Chrome 44 y versiones posteriores

Es similar a la API de ContextMenus de Chrome, pero se aplica a webview en lugar del navegador. Usa la API de webview.contextMenus para agregar elementos al menú contextual de webview. Puedes elegir a qué tipos de objetos se aplican tus adiciones al menú contextual, como imágenes, hipervínculos y páginas.

request

Interfaz que proporciona acceso a los eventos de webRequest en la página de invitado.

Métodos

addContentScripts()

Chrome 44 y versiones posteriores
chrome.webviewTag.addContentScripts(
  contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
)
: void

Agrega reglas de inserción de secuencias de comandos de contenido a webview. Cuando el webview navega a una página que coincide con una o más reglas, se insertarán las secuencias de comandos asociadas. Puedes agregar reglas de forma programática o actualizar las existentes.

En el siguiente ejemplo, se agregan dos reglas a webview: "myRule" y "anotherRule".

webview.addContentScripts([
  {
    name: 'myRule',
    matches: ['http://www.foo.com/*'],
    css: { files: ['mystyles.css'] },
    js: { files: ['jquery.js', 'myscript.js'] },
    run_at: 'document_start'
  },
  {
    name: 'anotherRule',
    matches: ['http://www.bar.com/*'],
    js: { code: "document.body.style.backgroundColor = 'red';" },
    run_at: 'document_end'
  }]);
 ...

// Navigates webview.
webview.src = 'http://www.foo.com';

Puedes aplazar la llamada a addContentScripts hasta que necesites insertar secuencias de comandos.

En el siguiente ejemplo, se muestra cómo reemplazar una regla existente.

webview.addContentScripts([{
    name: 'rule',
    matches: ['http://www.foo.com/*'],
    js: { files: ['scriptA.js'] },
    run_at: 'document_start'}]);

// Do something.
webview.src = 'http://www.foo.com/*';
 ...
// Overwrite 'rule' defined before.
webview.addContentScripts([{
    name: 'rule',
    matches: ['http://www.bar.com/*'],
    js: { files: ['scriptB.js'] },
    run_at: 'document_end'}]);

Si se navegó a webview hasta el origen (p.ej., foo.com) y se llama a webview.addContentScripts para agregar "myRule", debes esperar a la siguiente navegación para que se inyecten los secuencias de comandos. Si quieres una inyección inmediata, executeScript hará lo correcto.

Las reglas se conservan incluso si el proceso invitado falla o se finaliza, o incluso si se cambia el elemento superior de webview.

Consulta la documentación de las secuencias de comandos de contenido para obtener más detalles.

Parámetros

back()

chrome.webviewTag.back(
  callback?: function,
)
: void

Navega hacia atrás una entrada del historial, si es posible. Equivale a go(-1).

Parámetros

  • callback

    función opcional

    Chrome 44 y versiones posteriores

    El parámetro callback se ve de la siguiente manera:

    (success: boolean) => void

    • correcto

      booleano

      Indica si la navegación se realizó correctamente.

canGoBack()

chrome.webviewTag.canGoBack(): boolean

Indica si es posible navegar hacia atrás en el historial. El estado de esta función se almacena en caché y se actualiza antes de cada loadcommit, por lo que el mejor lugar para llamarla es en loadcommit.

Muestra

  • booleano

canGoForward()

chrome.webviewTag.canGoForward(): boolean

Indica si es posible navegar hacia adelante en el historial. El estado de esta función se almacena en caché y se actualiza antes de cada loadcommit, por lo que el mejor lugar para llamarla es en loadcommit.

Muestra

  • booleano

captureVisibleRegion()

Chrome 50 y versiones posteriores
chrome.webviewTag.captureVisibleRegion(
  options?: ImageDetails,
  callback: function,
)
: void

Captura la región visible de la vista web.

Parámetros

  • opciones

    ImageDetails opcional

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (dataUrl: string) => void

    • dataUrl

      string

      Es una URL de datos que codifica una imagen del área visible de la pestaña capturada. Se puede asignar a la propiedad "src" de un elemento de imagen HTML para su visualización.

clearData()

chrome.webviewTag.clearData(
  options: ClearDataOptions,
  types: ClearDataTypeSet,
  callback?: function,
)
: void

Borra los datos de navegación de la partición webview.

Parámetros

  • opciones

    Opciones que determinan qué datos se borrarán.

  • Son los tipos de datos que se borrarán.

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    () => void

executeScript()

chrome.webviewTag.executeScript(
  details: InjectDetails,
  callback?: function,
)
: void

Inserta código JavaScript en la página de invitado.

En el siguiente código de muestra, se usa la inserción de secuencias de comandos para establecer el color de fondo de la página de invitado en rojo:

webview.executeScript({ code: "document.body.style.backgroundColor = 'red'" });

Parámetros

  • detalles

    Son los detalles de la secuencia de comandos que se ejecutará.

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    (result?: any[]) => void

    • resultado

      any[] opcional

      Es el resultado de la secuencia de comandos en cada fotograma insertado.

find()

chrome.webviewTag.find(
  searchText: string,
  options?: FindOptions,
  callback?: function,
)
: void

Inicia una solicitud de búsqueda en la página.

Parámetros

  • searchText

    string

    Es la cadena que se buscará en la página.

  • opciones

    FindOptions opcional

    Son las opciones de la solicitud de búsqueda.

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    (results?: FindCallbackResults) => void

    • resultados

      Contiene todos los resultados de la solicitud de búsqueda. results se puede omitir si no se utiliza en el cuerpo de la función de devolución de llamada; por ejemplo, si la devolución de llamada solo se usa para discernir cuándo se completó la solicitud de búsqueda.

forward()

chrome.webviewTag.forward(
  callback?: function,
)
: void

Navega hacia adelante una entrada del historial, si es posible. Equivale a go(1).

Parámetros

  • callback

    función opcional

    Chrome 44 y versiones posteriores

    El parámetro callback se ve de la siguiente manera:

    (success: boolean) => void

    • correcto

      booleano

      Indica si la navegación se realizó correctamente.

getAudioState()

Chrome 62 y versiones posteriores
chrome.webviewTag.getAudioState(
  callback: function,
)
: void

Consulta el estado del audio.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (audible: boolean) => void

    • Audible

      booleano

getProcessId()

chrome.webviewTag.getProcessId(): number

Devuelve el ID de proceso interno de Chrome para el proceso actual de la página web de invitado, lo que permite que los incorporadores sepan cuántos invitados se verían afectados si se finaliza el proceso. Dos invitados compartirán un proceso solo si pertenecen a la misma app y tienen el mismo ID de partición de almacenamiento. La llamada es síncrona y devuelve la noción almacenada en caché del ID del proceso actual del incorporador. El ID del proceso no es el mismo que el ID del proceso del sistema operativo.

Muestra

  • número

getUserAgent()

chrome.webviewTag.getUserAgent(): string

Devuelve la cadena de usuario-agente que usa webview para las solicitudes de páginas de invitados.

Muestra

  • string

getZoom()

chrome.webviewTag.getZoom(
  callback: function,
)
: void

Obtiene el factor de zoom actual.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (zoomFactor: number) => void

    • zoomFactor

      número

      Es el factor de zoom actual.

getZoomMode()

Chrome 43 y versiones posteriores
chrome.webviewTag.getZoomMode(
  callback: function,
)
: void

Obtiene el modo de zoom actual.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (ZoomMode: ZoomMode) => void

    • ZoomMode

      Es el modo de zoom actual del webview.

go()

chrome.webviewTag.go(
  relativeIndex: number,
  callback?: function,
)
: void

Navega a una entrada del historial usando un índice del historial relativo a la navegación actual. Si la navegación solicitada es imposible, este método no tendrá efecto.

Parámetros

  • relativeIndex

    número

    Índice de historial relativo al que se debe navegar con webview. Por ejemplo, un valor de 2 navegará hacia adelante 2 entradas del historial si es posible; un valor de -3 navegará hacia atrás 3 entradas.

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    (success: boolean) => void

    • correcto

      booleano

      Indica si la navegación se realizó correctamente.

insertCSS()

chrome.webviewTag.insertCSS(
  details: InjectDetails,
  callback?: function,
)
: void

Inserta CSS en la página de invitado.

Parámetros

  • detalles

    Son los detalles del CSS que se insertará.

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    () => void

isAudioMuted()

Chrome 62 y versiones posteriores
chrome.webviewTag.isAudioMuted(
  callback: function,
)
: void

Consulta si el audio está silenciado.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (muted: boolean) => void

    • silenciado

      booleano

isSpatialNavigationEnabled()

Chrome 71 y versiones posteriores
chrome.webviewTag.isSpatialNavigationEnabled(
  callback: function,
)
: void

Consulta si la navegación espacial está habilitada para la WebView.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (enabled: boolean) => void

    • habilitado

      booleano

isUserAgentOverridden()

chrome.webviewTag.isUserAgentOverridden(): void

Indica si webviewTag.setUserAgentOverride anuló o no la cadena del agente de usuario de webview.

loadDataWithBaseUrl()

chrome.webviewTag.loadDataWithBaseUrl(
  dataUrl: string,
  baseUrl: string,
  virtualUrl?: string,
)
: void

Carga una URL de datos con una URL base especificada que se usa para los vínculos relativos. De forma opcional, se puede proporcionar una URL virtual para que se muestre al usuario en lugar de la URL de datos.

Parámetros

  • dataUrl

    string

    Es la URL de los datos que se cargarán.

  • baseUrl

    string

    Es la URL base que se usará para los vínculos relativos.

  • virtualUrl

    cadena opcional

    Es la URL que se mostrará al usuario (en la barra de direcciones).

print()

chrome.webviewTag.print(): void

Imprime el contenido de webview. Esto equivale a llamar a la función de impresión con secuencias de comandos desde el propio webview.

reload()

chrome.webviewTag.reload(): void

Vuelve a cargar la página de nivel superior actual.

removeContentScripts()

Chrome 44 y versiones posteriores
chrome.webviewTag.removeContentScripts(
  scriptNameList?: string[],
)
: void

Quita secuencias de comandos de contenido de un objeto webview.

En el siguiente ejemplo, se quita "myRule", que se había agregado antes.

webview.removeContentScripts(['myRule']);

Puedes quitar todas las reglas llamando a:

webview.removeContentScripts();

Parámetros

  • scriptNameList

    string[] opcional

    Es una lista de nombres de secuencias de comandos de contenido que se quitarán. Si la lista está vacía, se quitarán todas las secuencias de comandos de contenido agregadas a webview.

setAudioMuted()

Chrome 62 y versiones posteriores
chrome.webviewTag.setAudioMuted(
  mute: boolean,
)
: void

Establece el estado de silencio de audio de la WebView.

Parámetros

  • silenciar

    booleano

    Valor de silencio de audio

setSpatialNavigationEnabled()

Chrome 71 y versiones posteriores
chrome.webviewTag.setSpatialNavigationEnabled(
  enabled: boolean,
)
: void

Establece el estado de navegación espacial de la WebView.

Parámetros

  • habilitado

    booleano

    Valor del estado de navegación espacial.

setUserAgentOverride()

chrome.webviewTag.setUserAgentOverride(
  userAgent: string,
)
: void

Anula la cadena de usuario-agente que usa webview para las solicitudes de páginas de invitados. La anulación hará que los valores del encabezado de sugerencia del cliente User-Agent y los valores que devuelve navigator.userAgentData estén vacíos para las solicitudes de páginas de invitados a las que se aplique esta anulación.

Parámetros

  • userAgent

    string

    Es la cadena de usuario-agente que se usará.

setZoom()

chrome.webviewTag.setZoom(
  zoomFactor: number,
  callback?: function,
)
: void

Cambia el factor de zoom de la página. El alcance y la persistencia de este cambio se determinan según el modo de zoom actual de la WebView (consulta webviewTag.ZoomMode).

Parámetros

  • zoomFactor

    número

    Es el nuevo factor de zoom.

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    () => void

setZoomMode()

Chrome 43 y versiones posteriores
chrome.webviewTag.setZoomMode(
  ZoomMode: ZoomMode,
  callback?: function,
)
: void

Establece el modo de zoom de webview.

Parámetros

  • ZoomMode

    Define cómo se controla el zoom en webview.

  • callback

    función opcional

    El parámetro callback se ve de la siguiente manera:

    () => void

stop()

chrome.webviewTag.stop(): void

Detiene la carga de la navegación webview actual si está en curso.

stopFinding()

chrome.webviewTag.stopFinding(
  action?: StopFindingAction,
)
: void

Finaliza la sesión de búsqueda actual (borra todos los resaltados) y cancela todas las solicitudes de búsqueda en curso.

Parámetros

  • acción

    Determina qué hacer con la partida activa después de que finaliza la sesión de búsqueda. clear borrará el resaltado sobre la coincidencia activa; keep mantendrá resaltada la coincidencia activa; activate mantendrá resaltada la coincidencia activa y simulará un clic del usuario en esa coincidencia. La acción predeterminada es keep.

terminate()

chrome.webviewTag.terminate(): void

Cancela de forma forzosa el proceso de renderización de la página web para invitados. Esto puede afectar a varias etiquetas webview en la app actual si comparten el mismo proceso, pero no afectará a las etiquetas webview en otras apps.

Eventos

close

chrome.webviewTag.close.addListener(
  callback: function,
)

Se activa cuando la ventana secundaria intenta cerrarse.

En el siguiente código de ejemplo, se navega de webview a about:blank cuando el huésped intenta cerrarse.

webview.addEventListener('close', function() {
  webview.src = 'about:blank';
});

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    () => void

consolemessage

chrome.webviewTag.consolemessage.addListener(
  callback: function,
)

Se activa cuando la ventana de invitado registra un mensaje de la consola.

En el siguiente ejemplo de código, se reenvían todos los mensajes de registro a la consola del incorporador sin tener en cuenta el nivel de registro ni otras propiedades.

webview.addEventListener('consolemessage', function(e) {
  console.log('Guest page logged a message: ', e.message);
});

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (level: number, message: string, line: number, sourceId: string) => void

    • level

      número

    • mensaje

      string

    • línea

      número

    • sourceId

      string

contentload

chrome.webviewTag.contentload.addListener(
  callback: function,
)

Se activa cuando la ventana secundaria activa un evento load, es decir, cuando se carga un documento nuevo. Esto no incluye la navegación de páginas dentro del documento actual ni las cargas de recursos asíncronas.

El siguiente código de ejemplo modifica el tamaño de fuente predeterminado del elemento body del invitado después de que se carga la página:

webview.addEventListener('contentload', function() {
  webview.executeScript({ code: 'document.body.style.fontSize = "42px"' });
});

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    () => void

dialog

chrome.webviewTag.dialog.addListener(
  callback: function,
)

Se activa cuando la ventana de invitado intenta abrir un diálogo modal a través de window.alert, window.confirm o window.prompt.

El control de este evento bloqueará el proceso invitado hasta que cada objeto de escucha de eventos regrese o el objeto dialog se vuelva inaccesible (si se llamó a preventDefault()).

El comportamiento predeterminado es cancelar el diálogo.

Parámetros

exit

chrome.webviewTag.exit.addListener(
  callback: function,
)

Se activa cuando se cierra el proceso que renderiza el contenido web del invitado.

El siguiente código de ejemplo mostrará un mensaje de despedida cada vez que falle la página de invitados:

webview.addEventListener('exit', function(e) {
  if (e.reason === 'crash') {
    webview.src = 'data:text/plain,Goodbye, world!';
  }
});

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (details: object) => void

    • detalles

      objeto

      • processID

        número

        Es el ID interno de Chrome del proceso que se cerró.

      • Reason

        Cadena que indica el motivo de la salida.

findupdate

chrome.webviewTag.findupdate.addListener(
  callback: function,
)

Se activa cuando hay nuevos resultados de búsqueda disponibles para una solicitud de búsqueda activa. Esto puede suceder varias veces para una sola solicitud de búsqueda a medida que se encuentran coincidencias.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (searchText: string, numberOfMatches: number, activeMatchOrdinal: number, selectionRect: SelectionRect, canceled: boolean, finalUpdate: string) => void

    • searchText

      string

    • numberOfMatches

      número

    • activeMatchOrdinal

      número

    • selectionRect
    • cancelado

      booleano

    • finalUpdate

      string

loadabort

chrome.webviewTag.loadabort.addListener(
  callback: function,
)

Se activa cuando se anula una carga de nivel superior sin confirmarla. Se imprimirá un mensaje de error en la consola, a menos que se evite el comportamiento predeterminado del evento.

Nota: Cuando se anula la carga de un recurso, un evento loadabort se seguirá de un evento loadstop, incluso si se anularon todas las cargas confirmadas desde el último evento loadstop (si hubo alguno).

Nota: Cuando se anula la carga de una URL de about o de JavaScript, se activará loadabort y, luego, se navegará a webview a "about:blank".

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (url: string, isTopLevel: boolean, code: number, reason: LoadAbortReason) => void

loadcommit

chrome.webviewTag.loadcommit.addListener(
  callback: function,
)

Se activa cuando se confirma una carga. Esto incluye la navegación dentro del documento actual y las cargas a nivel del documento de subframes, pero no incluye las cargas de recursos asíncronas.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (url: string, isTopLevel: boolean) => void

    • url

      string

    • isTopLevel

      booleano

loadredirect

chrome.webviewTag.loadredirect.addListener(
  callback: function,
)

Se activa cuando una solicitud de carga de nivel superior se redireccionó a una URL diferente.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (oldUrl: string, newUrl: string, isTopLevel: boolean) => void

    • oldUrl

      string

    • newUrl

      string

    • isTopLevel

      booleano

loadstart

chrome.webviewTag.loadstart.addListener(
  callback: function,
)

Se activa cuando comienza una carga.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (url: string, isTopLevel: boolean) => void

    • url

      string

    • isTopLevel

      booleano

loadstop

chrome.webviewTag.loadstop.addListener(
  callback: function,
)

Se activa cuando se completan todas las cargas a nivel del fotograma en una página secundaria (incluidos todos sus subfotogramas). Esto incluye la navegación dentro del documento actual y las cargas a nivel del documento de subframes, pero no incluye las cargas de recursos asíncronas. Este evento se activa cada vez que la cantidad de cargas a nivel del documento pasa de una (o más) a cero. Por ejemplo, si una página ya terminó de cargarse (es decir, loadstop ya se activó una vez) crea un iframe nuevo que carga una página y, luego, se activará un segundo loadstop cuando se complete la carga de la página del iframe. Este patrón se observa comúnmente en las páginas que cargan anuncios.

Nota: Cuando se anula una carga confirmada, un evento loadstop seguirá a un evento loadabort, incluso si se anularon todas las cargas confirmadas desde el último evento loadstop (si hubo alguno).

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    () => void

newwindow

chrome.webviewTag.newwindow.addListener(
  callback: function,
)

Se activa cuando la página de invitado intenta abrir una nueva ventana del navegador.

El siguiente ejemplo de código creará un nuevo webview en el incorporador y navegará a él para cada ventana nueva solicitada:

webview.addEventListener('newwindow', function(e) {
  var newWebview = document.createElement('webview');
  document.body.appendChild(newWebview);
  e.window.attach(newWebview);
});

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (window: NewWindow, targetUrl: string, initialWidth: number, initialHeight: number, name: string, windowOpenDisposition: WindowOpenDisposition) => void

permissionrequest

chrome.webviewTag.permissionrequest.addListener(
  callback: function,
)

Se activa cuando la página de invitado necesita solicitar un permiso especial del incorporador.

El siguiente código de ejemplo otorgará acceso a la página de invitado a la API de webkitGetUserMedia. Ten en cuenta que una app que use este código de ejemplo debe especificar los permisos de manifiesto audioCapture o videoCapture:

webview.addEventListener('permissionrequest', function(e) {
  if (e.permission === 'media') {
    e.request.allow();
  }
});

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (permission: PermissionType, request: object) => void

responsive

chrome.webviewTag.responsive.addListener(
  callback: function,
)

Se activa cuando el proceso que renderiza el contenido web invitado vuelve a responder después de no responder.

El siguiente código de ejemplo atenuará el elemento webview a medida que se vuelva responsivo o no responsivo:

webview.style.webkitTransition = 'opacity 250ms';
webview.addEventListener('unresponsive', function() {
  webview.style.opacity = '0.5';
});
webview.addEventListener('responsive', function() {
  webview.style.opacity = '1';
});

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (processID: number) => void

    • processID

      número

sizechanged

chrome.webviewTag.sizechanged.addListener(
  callback: function,
)

Se activa cuando se cambia el tamaño del contenido web incorporado a través de autosize. Solo se activa si autosize está habilitado.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (oldWidth: number, oldHeight: number, newWidth: number, newHeight: number) => void

    • oldWidth

      número

    • oldHeight

      número

    • newWidth

      número

    • newHeight

      número

unresponsive

chrome.webviewTag.unresponsive.addListener(
  callback: function,
)

Se activa cuando el proceso que renderiza el contenido web invitado deja de responder. Este evento se generará una vez con un evento adaptable coincidente si el invitado comienza a responder de nuevo.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (processID: number) => void

    • processID

      número

zoomchange

chrome.webviewTag.zoomchange.addListener(
  callback: function,
)

Se activa cuando cambia el zoom de la página.

Parámetros

  • callback

    función

    El parámetro callback se ve de la siguiente manera:

    (oldZoomFactor: number, newZoomFactor: number) => void

    • oldZoomFactor

      número

    • newZoomFactor

      número