Descripción
Usa la etiqueta webview
para cargar de forma activa contenido en vivo de la Web a través de la red e incorporarlo a tu app de Chrome. La app puede controlar la apariencia de webview
, interactuar con el contenido web, iniciar navegaciones en una página web incorporada, reaccionar a los eventos de error que ocurren dentro de ella y mucho más (consulta Uso).
Permisos
webview
Tipos
ClearDataOptions
Opciones que determinan qué datos se deben borrar antes del clearData
Propiedades
-
desde
número opcional
Borra los datos acumulados a partir de esta fecha, que se representan en milisegundos desde el ciclo de entrenamiento (accesible a través del método getTime del objeto
Date
de JavaScript). Si no está presente, el valor predeterminado es0
(lo que quitaría todos los datos de navegación).
ClearDataTypeSet
Un conjunto de tipos de datos. Las propiedades faltantes se interpretan como false
.
Propiedades
-
caché de la aplicación
booleano opcional
Appcaches de sitios web
-
Almacenamiento en caché
booleano opcional
Chrome 44 y versiones posterioresA partir de Chrome 43. La caché del navegador. Nota: Cuando quitas datos, se borra toda la caché; no se limita al rango que especifiques.
-
cookies
booleano opcional
Las cookies de la partición.
-
fileSystems
booleano opcional
Sistemas de archivos de sitios web
-
indexedDB
booleano opcional
Datos IndexedDB de los sitios web.
-
localStorage
booleano opcional
Datos de almacenamiento local de los sitios web
-
persistentCookies
booleano opcional
Chrome 58 y versiones posterioresLas cookies persistentes de la partición.
-
sessionCookies
booleano opcional
Chrome 58 y versiones posterioresLas cookies de sesión de la partición.
-
webSQL
booleano opcional
Datos de WebSQL de los sitios web
ContentScriptDetails
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
estrue
, significa que JavaScript o CSS se debe insertar en todos los marcos de la página actual. De forma predeterminada,all_frames
esfalse
, y el JavaScript o CSS solo se inserta en el marco superior. -
css
InjectionItems opcional
El código CSS o una lista de archivos CSS que se insertarán en las páginas coincidentes. Estos se insertan en el orden en que aparecen, antes de que se construya un DOM o se muestre para la página.
-
exclude_globs
string[] opcional
Se aplica después de las coincidencias para excluir las URLs que coinciden con este glob. Su objetivo es emular la palabra clave @Exclude de Greasemonkey.
-
exclude_matches
string[] opcional
Excluye las páginas en las que se insertaría esta secuencia de comandos de contenido.
-
include_globs
string[] opcional
Se aplica después de las coincidencias para incluir solo las URLs que también coinciden con este glob. Tiene el objetivo de emular la palabra clave @include Greasemonkey.
-
js
InjectionItems opcional
El código JavaScript o una lista de archivos JavaScript que se insertarán en las páginas coincidentes. Estos se insertan en el orden en que aparecen.
-
match_about_blank
booleano opcional
Indica si se debe insertar la secuencia de comandos del contenido en about:blank y about:srcdoc. Las secuencias de comandos de contenido solo se insertarán en las páginas cuando la URL heredada coincida con uno de los patrones declarados en el campo de coincidencias. La URL heredada es la URL del documento que creó el marco o la ventana. Las secuencias de comandos de contenido no se pueden insertar en marcos de zona de pruebas.
-
coincide con
string[]
Especifica en qué páginas se insertará esta secuencia de comandos de contenido.
-
name
cadena
El nombre de la secuencia de comandos de contenido que se insertará.
-
run_at
RunAt opcional
En cuanto se inserte JavaScript o CSS en la pestaña, lo más pronto posible. La configuración predeterminada es “document_idle”.
ContentWindow
Controlador de mensajería a una ventana de invitado.
Propiedades
-
postMessage
void
Publica un mensaje en el contenido web incorporado, siempre y cuando en este se muestre una página del origen de destino. Este método está disponible una vez que se completa la carga de la página. Escucha el evento
contentload
y, luego, llama al método.El invitado podrá enviar respuestas al incorporado si publica un mensaje 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 marco.La función
postMessage
se ve de la siguiente manera:(message: any, targetOrigin: string) => {...}
-
mensaje
cualquiera
Objeto de mensaje para enviar al invitado.
-
targetOrigin
cadena
Especifica cuál debe ser el origen del período de invitado para que se envíe el evento.
-
ContextMenuCreateProperties
Propiedades
-
elemento marcado
booleano opcional
El estado inicial de una casilla de verificación o un elemento de selección: verdadero para los seleccionados y falso para los no seleccionados. Solo se puede elegir un elemento de selección a la vez en un grupo determinado de elementos de selección.
-
contextos
[ContextType, ...ContextType[]] opcional
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 especificados. (Esto también se aplica a los fotogramas). Para obtener detalles sobre el formato de un patrón, consulta Coincidencias de patrones.
-
habilitado
booleano opcional
Indica si este elemento de 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. Obligatorio para las páginas de eventos. No puede ser igual a otro ID para esta extensión.
-
parentId
cadena | número opcional
El ID de un elemento de menú superior; esto hace que el elemento sea un elemento secundario de un elemento agregado anteriormente.
-
targetUrlPatterns
string[] opcional
Es similar a documentUrlPatterns, pero te permite filtrar según el atributo
src
de las etiquetas img/audio/video y elhref
de las etiquetas de anclaje. -
title
cadena opcional
El texto que se mostrará en el elemento. Es obligatorio, a menos que
type
sea un "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 "Traducir '%s' a Pig Latin" y el usuario selecciona la palabra "genial", el elemento del menú contextual de la selección será "Traducir 'cool' a Pig Latin". -
Tipo
ItemType opcional
Es el tipo de elemento del menú. El valor predeterminado es “normal” si no se especifica.
-
onclick
void opcional
Una función a la que se volverá a llamar cuando se haga clic en el elemento de menú.
La función
onclick
se ve de la siguiente manera:(info: OnClickData) => {...}
-
info
Información sobre el elemento en el que se hizo clic y el contexto donde se hizo el clic.
-
ContextMenus
Propiedades
-
onShow
Evento<functionvoidvoid>
Se activa antes de mostrar un menú contextual sobre este
webview
. Se puede usar para inhabilitar este menú contextual llamando aevent.preventDefault()
.La función
onShow.addListener
se ve de la siguiente manera:(callback: function) => {...}
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(event: object) => void
-
event
objeto
-
preventDefault
void
Llámalo para que no se muestre el menú contextual.
La función
preventDefault
se ve de la siguiente manera:() => {...}
-
-
-
-
crear
void
Crea un nuevo elemento de menú contextual. Ten en cuenta que, si se produce un error durante la creación, es posible que no lo sepas 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
Las propiedades utilizadas para crear el elemento
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
-
resultados
cadena | número
El ID del elemento recién creado.
-
-
remove
void
Elimina un elemento del menú contextual.
La función
remove
se ve de la siguiente manera:(menuItemId: string | number, callback?: function) => {...}
-
cadena | número
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
El ID del artículo que se actualizará.
-
updateProperties
objeto
Las propiedades que se actualizarán. Acepta los mismos valores que la función create.
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
-
ContextMenuUpdateProperties
Propiedades
-
elemento marcado
booleano opcional
El estado de una casilla de verificación o de un elemento de selección: verdadero para los seleccionados y falso para los no seleccionados. Solo se puede elegir un elemento de selección a la vez en un grupo determinado de elementos de selección.
-
contextos
[ContextType, ...ContextType[]] opcional
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 especificados. (Esto también se aplica a los fotogramas). Para obtener detalles sobre el formato de un patrón, consulta Coincidencias de patrones.
-
habilitado
booleano opcional
Indica si este elemento de menú contextual está habilitado o inhabilitado.
-
parentId
cadena | número opcional
El ID de un elemento de menú superior; esto hace que el elemento sea un elemento secundario de un elemento agregado anteriormente. Nota: No puedes cambiar un elemento para que sea elemento secundario de uno de sus propios elementos subordinados.
-
targetUrlPatterns
string[] opcional
Es similar a documentUrlPatterns, pero te permite filtrar según el atributo
src
de las etiquetas img/audio/video y elhref
de las etiquetas de anclaje. -
title
cadena opcional
El texto que se mostrará en el elemento
-
Tipo
ItemType opcional
Es el tipo de elemento del menú.
-
onclick
void opcional
Una función a la que se volverá a llamar cuando se haga clic en el elemento de menú.
La función
onclick
se ve de la siguiente manera:(info: OnClickData) => {...}
-
info
Información sobre el elemento en el que se hizo clic y el contexto donde se hizo el clic.
-
ContextType
Los diferentes contextos en los que puede aparecer un menú. Especificar “todos” equivale a la combinación de todos los demás contextos.
Enum
DialogController
Interfaz conectada a dialog
eventos del DOM.
Propiedades
-
cancelar
void
Rechaza el diálogo. Equivale a hacer clic en Cancelar en un diálogo
confirm
oprompt
.La función
cancel
se ve de la siguiente manera:() => {...}
-
correcto
void
Acepta el cuadro de diálogo. Equivale a hacer clic en OK en un diálogo
alert
,confirm
oprompt
.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
prompt
.
-
DownloadPermissionRequest
Es el tipo de objeto request
que acompaña a un evento del DOM download
permissionrequest
.
Propiedades
-
requestMethod
cadena
El tipo de solicitud HTTP (p.ej.,
GET
) asociado con la solicitud de descarga. -
url
cadena
Es la URL de descarga solicitada.
-
allow
void
Otorga la solicitud de permiso.
La función
allow
se ve de la siguiente manera:() => {...}
-
deny
void
Rechazar 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:() => {...}
FileSystemPermissionRequest
Es el tipo de objeto request
que acompaña a un evento del DOM filesystem
permissionrequest
.
Propiedades
-
url
cadena
La URL del marco que solicita acceso al sistema de archivos local.
-
allow
void
Otorga la solicitud de permiso.
La función
allow
se ve de la siguiente manera:() => {...}
-
deny
void
Rechazar 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
El número ordinal de la coincidencia actual.
-
cancelado
boolean
Indica si se canceló esta solicitud de búsqueda.
-
numberOfMatches
número
La cantidad de veces que
searchText
coincidió con la página. -
selectionRect
Describe un rectángulo alrededor de la coincidencia activa en las coordenadas de la pantalla.
FindOptions
Opciones para la solicitud de búsqueda.
Propiedades
-
hacia atrás
booleano opcional
Marca para encontrar coincidencias en orden inverso. El valor predeterminado es
false
. -
matchCase
booleano opcional
Marca para que coincida con la distinción entre mayúsculas y minúsculas. El valor predeterminado es
false
.
FullscreenPermissionRequest
Es el tipo de objeto request
que acompaña a un evento del DOM fullscreen
permissionrequest
.
Propiedades
-
origin
cadena
Es el origen del marco dentro del
webview
que inició la solicitud de pantalla completa. -
allow
void
Otorga la solicitud de permiso.
La función
allow
se ve de la siguiente manera:() => {...}
-
deny
void
Rechazar 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 del DOM geolocation
permissionrequest
.
Propiedades
-
url
cadena
La URL del marco que solicita acceso a datos de ubicación geográfica.
-
allow
void
Otorga la solicitud de permiso.
La función
allow
se ve de la siguiente manera:() => {...}
-
deny
void
Rechazar 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
Es el tipo de objeto request
que acompaña a un evento del DOM hid
permissionrequest
.
Propiedades
-
url
cadena
La URL del marco que solicita acceso a la API de HID.
-
allow
void
Otorga la solicitud de permiso.
La función
allow
se ve de la siguiente manera:() => {...}
-
deny
void
Rechazar 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
Detalles de la secuencia de comandos o CSS que se insertarán. Se deben configurar el código o la propiedad del archivo, pero no ambos al mismo tiempo.
Propiedades
-
código
cadena opcional
Código JavaScript o CSS para insertar.
Advertencia: Ten cuidado cuando uses el parámetro
code
. Si se usa de forma incorrecta, es posible que tu app se abra ante ataques de secuencia de comandos entre sitios. -
en el archivo.
cadena opcional
Archivo JavaScript o CSS para insertar.
InjectionItems
El tipo de elemento de inyección: código o conjunto de archivos
Propiedades
-
código
cadena opcional
Se insertará código JavaScript o CSS en las páginas coincidentes.
-
archivos
string[] opcional
La lista de archivos JavaScript o CSS que se insertarán en las páginas coincidentes. Estos se insertan en el orden en que aparecen en este array.
LoadPluginPermissionRequest
Es el tipo de objeto request
que acompaña a un evento del DOM loadplugin
permissionrequest
.
Propiedades
-
identifier
cadena
La cadena identificadora del complemento.
-
name
cadena
El nombre visible del complemento.
-
allow
void
Otorga 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
Rechazar 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 del DOM media
permissionrequest
.
Propiedades
-
url
cadena
La URL del marco que solicita acceso al contenido multimedia del usuario.
-
allow
void
Otorga la solicitud de permiso.
La función
allow
se ve de la siguiente manera:() => {...}
-
deny
void
Rechazar 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 conectada a newwindow
eventos del DOM.
Propiedades
-
conectar
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
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:() => {...}
PointerLockPermissionRequest
Es el tipo de objeto request
que acompaña a un evento del DOM pointerLock
permissionrequest
.
Propiedades
-
lastUnlockedBySelf
boolean
Indica si el marco solicitante fue o no el cliente más reciente en retener el bloqueo del puntero.
-
url
cadena
La URL del marco que solicita el bloqueo del puntero.
-
userGesture
boolean
Indica si se solicitó o no el bloqueo del puntero como resultado de un gesto de entrada del usuario.
-
allow
void
Otorga la solicitud de permiso.
La función
allow
se ve de la siguiente manera:() => {...}
-
deny
void
Rechazar 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 un array; es decir, se considera que la coordenada (left, top)
está dentro del rectángulo, pero no la coordenada (left + width, top)
.
Propiedades
-
height
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.
-
width
número
Ancho del rectángulo.
WebRequestEventInterface
Interfaz que proporciona acceso a los eventos webRequest en la página de invitado. Consulta la API de extensiones de chrome.webRequest para obtener detalles sobre el ciclo de vida de webRequest y los conceptos relacionados. Nota: El evento chrome.webRequest.onActionIgnored no es compatible con WebView.
Para ilustrar cómo difiere el uso de la API de extensiones webRequest, ten en cuenta 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 eventos onRequest
y onMessage
. Consulta declarativeWebRequest
para obtener más información sobre la API.
Ten en cuenta que se deben crear instancias de las condiciones y acciones para las webRequest declarativas de webview desde sus contrapartes chrome.webViewRequest.*
. El siguiente código de ejemplo bloquea 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]);
ZoomMode
Define cómo se controla el zoom en el webview
.
Enum
"por origen"
Los cambios de zoom se mantendrán en el origen de la página con zoom, es decir, se aplicará el zoom a todas las demás WebViews de la misma partición que naveguen a ese mismo origen. Además, los cambios de zoom de per-origin
se guardan con el origen, lo que significa que, cuando se navegue a otras páginas del mismo origen, todos tendrán el mismo factor de zoom.
"per-view"
Los cambios de zoom solo se aplican en esta WebView, y los cambios de zoom en otras WebView no afectan el zoom de esta WebView. Además, los cambios de zoom de per-view
se restablecen durante la navegación. Cuando navegas por WebView, siempre se cargan páginas con sus factores de zoom por origen (dentro del alcance de la partición).
"inhabilitado"
Inhabilita el zoom en WebView. El contenido volverá al nivel de zoom predeterminado y se ignorarán todos los cambios de zoom que se hayan intentado.
Propiedades
contentWindow
Referencia de objeto que se puede usar para publicar mensajes en la página de invitado.
Tipo
contextMenus
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 las incorporaciones de tu menú contextual, como imágenes, hipervínculos y páginas.
Tipo
request
Interfaz que proporciona acceso a los eventos webRequest en la página de invitado.
Métodos
addContentScripts()
chrome.webviewTag.addContentScripts(
contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
)
Agrega reglas de inserción de secuencias de comandos de contenido a webview
. Cuando webview
navegue a una página que coincida con una o más reglas, se insertarán las secuencias de comandos asociadas. Puedes agregar reglas de manera 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 diferir 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ó por webview
al origen (p.ej., foo.com) y llama a webview.addContentScripts
para agregar "myRule", debes esperar la siguiente navegación para insertar las secuencias de comandos. Si deseas una inyección inmediata, executeScript
hará lo correcto.
Las reglas se conservan incluso si el proceso de invitado falla o se cierra, o incluso si se cambia el campo superior de webview
.
Consulta la documentación de las secuencias de comandos de contenido para obtener más detalles.
Parámetros
-
contentScriptList
Detalles de las secuencias de comandos de contenido que se agregarán.
back()
chrome.webviewTag.back(
callback?: function,
)
Retrocede una entrada del historial si es posible. Equivale a go(-1)
.
Parámetros
-
callback
Función opcional
Chrome 44 y versiones posterioresEl parámetro
callback
se ve de la siguiente manera:(success: boolean) => void
-
correcto
boolean
Indica si la navegación se realizó correctamente.
-
canGoBack()
chrome.webviewTag.canGoBack()
Indica si es posible o no 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
.
Devuelve
-
boolean
canGoForward()
chrome.webviewTag.canGoForward()
Indica si es posible avanzar o no por 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
.
Devuelve
-
boolean
captureVisibleRegion()
chrome.webviewTag.captureVisibleRegion(
options?: ImageDetails,
callback: function,
)
Captura la región visible de WebView.
Parámetros
-
Opciones
ImageDetails opcional
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(dataUrl: string) => void
-
dataUrl
cadena
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,
)
Borra los datos de navegación de la partición webview
.
Parámetros
-
Opciones
Opciones para determinar qué datos borrar
-
Tipos
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,
)
Inserta código JavaScript en la página de invitado.
El siguiente código de muestra usa la inyecció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
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
El resultado de la secuencia de comandos en cada fotograma insertado.
-
find()
chrome.webviewTag.find(
searchText: string,
options?: FindOptions,
callback?: function,
)
Inicia una solicitud de búsqueda en la página.
Parámetros
-
searchText
cadena
Es la cadena que se debe encontrar en la página.
-
Opciones
FindOptions opcional
Opciones para la solicitud de búsqueda.
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:(results?: FindCallbackResults) => void
-
resultados
FindCallbackResults opcional
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 completa la solicitud de búsqueda.
-
forward()
chrome.webviewTag.forward(
callback?: function,
)
Avanza una entrada del historial si es posible. Equivale a go(1)
.
Parámetros
-
callback
Función opcional
Chrome 44 y versiones posterioresEl parámetro
callback
se ve de la siguiente manera:(success: boolean) => void
-
correcto
boolean
Indica si la navegación se realizó correctamente.
-
getAudioState()
chrome.webviewTag.getAudioState(
callback: function,
)
El estado del audio de consultas.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(audible: boolean) => void
-
Audible
boolean
-
getProcessId()
chrome.webviewTag.getProcessId()
Devuelve el ID de proceso interno de Chrome para el proceso actual de la página web de invitado, lo que permite a los insertadores saber cuántos invitados se verían afectados al finalizar 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 muestra la noción almacenada en caché del incorporador del ID del proceso actual. El ID del proceso no es el mismo que el del sistema operativo.
Devuelve
-
número
getUserAgent()
chrome.webviewTag.getUserAgent()
Muestra la string del usuario-agente que usa webview
para las solicitudes de página de invitado.
Devuelve
-
cadena
getZoom()
chrome.webviewTag.getZoom(
callback: function,
)
Obtiene el factor de zoom actual.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(zoomFactor: number) => void
-
zoomFactor
número
El factor de zoom actual.
-
getZoomMode()
chrome.webviewTag.getZoomMode(
callback: function,
)
Obtiene el modo de zoom actual.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(ZoomMode: ZoomMode) => void
-
ZoomMode
El modo de zoom actual del
webview
-
go()
chrome.webviewTag.go(
relativeIndex: number,
callback?: function,
)
Navega a una entrada del historial mediante un índice de historial relacionado con la navegación actual. Si la navegación solicitada es imposible, este método no tiene efecto.
Parámetros
-
relativeIndex
número
Índice de historial relativo al que se debe navegar por
webview
Por ejemplo, un valor de2
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
boolean
Indica si la navegación se realizó correctamente.
-
insertCSS()
chrome.webviewTag.insertCSS(
details: InjectDetails,
callback?: function,
)
Inserta CSS en la página de invitado.
Parámetros
-
detalles
Detalles del CSS que se insertará.
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
isAudioMuted()
chrome.webviewTag.isAudioMuted(
callback: function,
)
Consulta si el audio está silenciado.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(muted: boolean) => void
-
silenciado
boolean
-
isSpatialNavigationEnabled()
chrome.webviewTag.isSpatialNavigationEnabled(
callback: function,
)
Consulta si la navegación espacial está habilitada para WebView.
Parámetros
-
la función
El parámetro
callback
se ve de la siguiente manera:(enabled: boolean) => void
-
boolean
-
isUserAgentOverridden()
chrome.webviewTag.isUserAgentOverridden()
Indica si webviewTag.setUserAgentOverride
anuló o no la cadena de usuario-agente de webview
.
loadDataWithBaseUrl()
chrome.webviewTag.loadDataWithBaseUrl(
dataUrl: string,
baseUrl: string,
virtualUrl?: string,
)
Carga una URL de datos con una URL base especificada que se utiliza para vínculos relativos. De manera opcional, se puede proporcionar una URL virtual para mostrar al usuario en lugar de la URL de datos.
Parámetros
-
dataUrl
cadena
La URL de datos que se cargará.
-
baseUrl
cadena
La URL base que se usará para los vínculos relativos.
-
virtualUrl
cadena opcional
La URL que se le mostrará al usuario (en la barra de direcciones).
print()
chrome.webviewTag.print()
Imprime el contenido de webview
. Esto equivale a llamar a la función de impresión con secuencias de comandos desde webview
.
reload()
chrome.webviewTag.reload()
Vuelve a cargar la página de nivel superior actual.
removeContentScripts()
chrome.webviewTag.removeContentScripts(
scriptNameList?: string[],
)
Quita las secuencias de comandos del contenido de un webview
.
En el siguiente ejemplo, se quita "myRule", que se agregó antes.
webview.removeContentScripts(['myRule']);
Para quitar todas las reglas, llama al siguiente comando:
webview.removeContentScripts();
Parámetros
-
scriptNameList
string[] opcional
Una lista de los nombres de las 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.webviewTag.setAudioMuted(
mute: boolean,
)
Establece el estado de silencio del audio de WebView.
Parámetros
-
silenciar
boolean
Silenciar el valor de audio
setSpatialNavigationEnabled()
chrome.webviewTag.setSpatialNavigationEnabled(
enabled: boolean,
)
Configura el estado de navegación espacial de la WebView.
Parámetros
-
boolean
Valor de estado de la navegación espacial.
setUserAgentOverride()
chrome.webviewTag.setUserAgentOverride(
userAgent: string,
)
Anula la string del usuario-agente que usa webview
para las solicitudes de página de invitado. La anulación hará que los valores de encabezado de User-Agent Client Hint y los valores que muestre navigator.userAgentData
estén vacíos para las solicitudes de la página de invitado a las que se aplica esta anulación.
Parámetros
-
userAgent
cadena
La cadena de usuario-agente que se usará.
setZoom()
chrome.webviewTag.setZoom(
zoomFactor: number,
callback?: function,
)
Cambia el factor de zoom de la página. El alcance y la persistencia de este cambio están determinados por el modo de zoom actual de la WebView (consulta webviewTag.ZoomMode
).
Parámetros
-
zoomFactor
número
El nuevo factor de zoom.
-
callback
Función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
setZoomMode()
chrome.webviewTag.setZoomMode(
ZoomMode: ZoomMode,
callback?: function,
)
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()
Deja de cargar la navegación actual de webview
si está en curso.
stopFinding()
chrome.webviewTag.stopFinding(
action?: "clear"
| "keep"
| "activate"
,
)
Finaliza la sesión de búsqueda actual (borra todos los elementos destacados) y cancela todas las solicitudes de búsqueda en curso.
Parámetros
-
acción
opcional
Determina qué hacer con la coincidencia activa después de que haya finalizado la sesión de búsqueda.
clear
borrará el elemento destacado sobre la coincidencia activa.keep
mantendrá la coincidencia activa destacada.activate
mantendrá la coincidencia activa destacada y simulará que un usuario hace clic en esa coincidencia. La acción predeterminada eskeep
.
terminate()
chrome.webviewTag.terminate()
Finaliza de manera forzosa el proceso de renderización de la página web invitado. 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 del invitado intenta cerrarse.
En el siguiente código de ejemplo, se navega por webview
a about:blank
cuando el invitado intenta cerrarse a sí mismo.
webview.addEventListener('close', function() {
webview.src = 'about:blank';
});
Parámetros
-
callback
la 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 del invitado registra un mensaje de la consola.
El siguiente código de ejemplo reenvía todos los mensajes de registro a la consola del insertador 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
la 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
cadena
-
line
número
-
sourceId
cadena
-
contentload
chrome.webviewTag.contentload.addListener(
callback: function,
)
Se activa cuando la ventana del invitado 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.
En el siguiente código de ejemplo, se modifica el tamaño de fuente predeterminado del elemento body
del invitado una vez que se carga la página:
webview.addEventListener('contentload', function() {
webview.executeScript({ code: 'document.body.style.fontSize = "42px"' });
});
Parámetros
-
callback
la 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 del invitado intenta abrir un diálogo modal a través de window.alert
, window.confirm
o window.prompt
.
Si controlas este evento, se bloqueará el proceso de invitado hasta que muestre cada objeto de escucha de eventos o hasta que no se pueda acceder al objeto dialog
(si se llamó a preventDefault()
).
El comportamiento predeterminado es cancelar el diálogo.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(messageType: "alert"
| "confirm"
| "prompt"
, messageText: string, dialog: DialogController) => void-
messageType
-
messageText
cadena
-
diálogo
-
exit
chrome.webviewTag.exit.addListener(
callback: function,
)
Se activa cuando finaliza el proceso que renderiza el contenido web para invitados.
En el siguiente código de ejemplo, se mostrará un mensaje de despedida cada vez que falle la página de invitado:
webview.addEventListener('exit', function(e) {
if (e.reason === 'crash') {
webview.src = 'data:text/plain,Goodbye, world!';
}
});
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(processID: number, reason: "normal"
| "abnormal"
| "crash"
| "kill"
) => void-
processID
número
-
Reason
"normal"
| "anormal"
| "crash"
| "kill"
-
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 ocurrir varias veces para una sola solicitud de búsqueda a medida que se encuentran coincidencias.
Parámetros
-
callback
la 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
cadena
-
numberOfMatches
número
-
activeMatchOrdinal
número
-
selectionRect
-
cancelado
boolean
-
finalUpdate
cadena
-
loadabort
chrome.webviewTag.loadabort.addListener(
callback: function,
)
Se activa cuando se anula una carga de nivel superior sin confirmarse. Se mostrará un mensaje de error en la consola, a menos que se impida la configuración predeterminada del evento.
Nota: Cuando se anula una carga de recurso, un evento loadabort
eventualmente será seguido por un evento loadstop
, incluso si se anularon todas las cargas confirmadas desde el último evento loadstop
(si corresponde).
Nota: Cuando se anule la carga de una URL Acerca de o una URL de JavaScript, se activará loadabort
y, luego, se navegará por webview
a "about:blank".
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(url: string, isTopLevel: boolean, code: number, reason: "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"
) => void-
url
cadena
-
isTopLevel
boolean
-
código
número
-
Reason
"ERR_ABORTED"
| "ERR_INVALID_URL"
| "ERR_DISALLOWED_URL_SCHEME"
| "ERR_BLOCKED_BY_CLIENT"
| "ERR_ADDRESS_UNREACHABLE"
| "ERR_DISALLOWED_URL_SCHEME"
-
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 en submarcos, pero no incluye cargas de recursos asíncronas.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(url: string, isTopLevel: boolean) => void
-
url
cadena
-
isTopLevel
boolean
-
loadredirect
chrome.webviewTag.loadredirect.addListener(
callback: function,
)
Se activa cuando una solicitud de carga de nivel superior redirecciona a una URL diferente.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(oldUrl: string, newUrl: string, isTopLevel: boolean) => void
-
oldUrl
cadena
-
newUrl
cadena
-
isTopLevel
boolean
-
loadstart
chrome.webviewTag.loadstart.addListener(
callback: function,
)
Se activa cuando comienza una carga.
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(url: string, isTopLevel: boolean) => void
-
url
cadena
-
isTopLevel
boolean
-
loadstop
chrome.webviewTag.loadstop.addListener(
callback: function,
)
Se activa cuando se completan todas las cargas a nivel de los marcos en una página de invitado (incluidos todos sus submarcos). Esto incluye la navegación dentro del documento actual y las cargas a nivel del documento en submarcos, pero no incluye cargas de recursos asíncronas. Este evento se activa cada vez que la cantidad de cargas a nivel del documento pasa de uno (o más) a cero. Por ejemplo, si se terminó de cargar una página (es decir, loadstop
ya se activó una vez) crea un nuevo iframe que carga una página y, luego, se activa un segundo loadstop
cuando se completa la carga de la página del iframe. Este patrón se observa comúnmente en páginas que cargan anuncios.
Nota: Cuando se anula una carga confirmada, un evento loadstop
eventualmente seguirá a un evento loadabort
, incluso si se anularon todas las cargas confirmadas desde el último evento loadstop
(si corresponde).
Parámetros
-
callback
la 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.
Con el siguiente código de ejemplo, se creará un webview
nuevo y se navegará por él en la incorporación 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
la función
El parámetro
callback
se ve de la siguiente manera:(window: NewWindow, targetUrl: string, initialWidth: number, initialHeight: number, name: string, windowOpenDisposition: "ignore"
| "save_to_disk"
| "current_tab"
| "new_background_tab"
| "new_foreground_tab"
| "new_window"
| "new_popup"
) => void-
ventana
-
targetUrl
cadena
-
initialWidth
número
-
initialHeight
número
-
name
cadena
-
windowOpenDisposition
"ignore"
| "save_to_disk"
| "current_tab"
| "new_background_tab"
| "new_foreground_tab"
| "new_window"
| "new_popup"
-
permissionrequest
chrome.webviewTag.permissionrequest.addListener(
callback: function,
)
Se activa cuando la página de invitado necesita solicitar un permiso especial del insertador.
El siguiente código de ejemplo le otorgará a la página de invitado acceso a la API de webkitGetUserMedia
. Ten en cuenta que la app que usa este código de ejemplo debe especificar los permisos del manifiesto audioCapture
o videoCapture
:
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'media') {
e.request.allow();
}
});
Parámetros
-
callback
la función
El parámetro
callback
se ve de la siguiente manera:(permission: "media"
| "geolocation"
| "pointerLock"
| "download"
| "loadplugin"
| "filesystem"
| "fullscreen"
| "hid"
, request: object) => void-
permiso
"media"
| "ubicación geográfica"
| "pointerLock"
| "download"
| "loadplugin"
| "filesystem"
| "fullscreen"
| "hid"
-
request
objeto
-
responsive
chrome.webviewTag.responsive.addListener(
callback: function,
)
Se activa cuando el proceso que procesa el contenido web del invitado vuelve a responder después de que se deja de responder.
En el siguiente código de ejemplo, se aplicará un fundido de entrada o salida al elemento webview
a medida que se vuelva responsivo o no:
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
la 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 cambió el tamaño del contenido web incorporado mediante autosize
. Solo se activa si autosize
está habilitado.
Parámetros
-
callback
la 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 procesa el contenido web del invitado deja de responder. Este evento se generará una vez con un evento responsivo coincidente si el invitado comienza a responder nuevamente.
Parámetros
-
callback
la 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
la función
El parámetro
callback
se ve de la siguiente manera:(oldZoomFactor: number, newZoomFactor: number) => void
-
oldZoomFactor
número
-
newZoomFactor
número
-