Descripción
Usa la etiqueta webview
para cargar activamente contenido en vivo desde la Web a través de la red e incorpóralo en tu app de Chrome. Tu app puede controlar el aspecto de la webview
e interactuar con el contenido web, iniciar la navegación en una página web incorporada, reaccionar a los eventos de error que ocurren en ella y mucho más (consulta la sección Uso).
Permisos
webview
Tipos
ClearDataOptions
Opciones que determinan qué datos debe borrar clearData
.
Propiedades
-
desde
número opcional
Borra los datos acumulados en esta fecha o después, representados en milisegundos desde el ciclo de entrenamiento (accesible a través del método getTime del objeto
Date
de JavaScript). Si está ausente, 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 aplicaciones
booleano opcional
Sitios web cachés de aplicaciones.
-
Almacenamiento en caché
booleano opcional
Chrome 44 y versiones posterioresA partir de Chrome 43. La caché del navegador Nota: Cuando se quitan los 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
Sitios web sistemas de archivos.
-
indexedDB
booleano opcional
Sitios web Datos de IndexedDB.
-
localStorage
booleano opcional
Sitios web de almacenamiento local.
-
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
Sitios web Datos de WebSQL.
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
, esto implica que JavaScript o CSS deben insertarse en todos los marcos de la página actual. De forma predeterminada,all_frames
esfalse
, y 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 páginas coincidentes. Estos se insertan en el orden en que aparecen, antes de que se construya o se 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 glob. Tiene el objetivo de emular la palabra clave @Exclude 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 como objetivo emular la palabra clave @include Greasemonkey.
-
js
InjectionItems opcional
El código JavaScript o una lista de archivos JavaScript que se insertarán en páginas coincidentes. Estos se insertan en el orden en que aparecen.
-
match_about_blank
booleano opcional
Establece si se debe insertar la secuencia de comandos de 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. No se pueden insertar secuencias de comandos de contenido en marcos de zona de pruebas.
-
coincide con
string[]
Especifica en qué páginas se insertará esta secuencia de comandos de contenido.
-
nombre
string
El nombre de la secuencia de comandos de contenido que se insertará.
-
run_at
RunAt opcional
Lo más pronto que se insertará JavaScript o CSS en la pestaña. La configuración predeterminada es "document_idle".
ContentWindow
Controlador de mensajería para una ventana de invitado.
Propiedades
-
postMessage
void
Publica un mensaje en el contenido web incorporado, siempre que en este se muestre una página del origen objetivo. Este método estará disponible una vez que se complete la carga de la página. Detecta el evento
contentload
y, luego, llama al método.El invitado podrá enviar respuestas a la incorporación mediante la publicación de un mensaje en
event.source
en el evento de mensaje que reciba.Esta API es idéntica a la API de HTML5 postMessage para la comunicación entre páginas web. La incorporación puede escuchar 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
string
Especifica cuál debe ser el origen de la ventana de invitado para que se despache el evento.
-
ContextMenuCreateProperties
Propiedades
-
activado
booleano opcional
El estado inicial de una casilla de verificación o de un elemento de selección: verdadero para los elementos seleccionados y falso para aquellos no seleccionados. Solo se puede seleccionar 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 la que aparecerá este elemento de menú. Si no se especifica, el valor predeterminado es ['page'].
-
documentUrlPatterns
string[] opcional
Te permite restringir el elemento para aplicarlo únicamente a los documentos cuya URL coincida con uno de los patrones especificados. (Esto también se aplica a los marcos). Para obtener detalles sobre el formato de un patrón, consulta Patrones de coincidencia.
-
habilitado
booleano opcional
Si este elemento del menú contextual está habilitado o inhabilitado. La configuración predeterminada es
true
. -
id
string 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
string | número opcional
Es 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 etiquetas de anclaje. -
título
string opcional
El texto que se mostrará en el elemento. esto es obligatorio, a menos que
type
sea "separador". 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 para la selección es "Traducir 'genial' a Pig Latin". -
tipo
ItemType opcional
Es el tipo de elemento de menú. La configuración predeterminada es “normal”. si no se especifica.
-
onclick
void optional
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
Información sobre el elemento en el que se hizo clic y el contexto en el que se hizo clic.
-
ContextMenus
Propiedades
-
onShow
Evento<functionvoidvoid>
Se activó antes de mostrar un menú contextual en 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
función
El parámetro
callback
se ve de la siguiente manera:(event: object) => void
-
evento
objeto
-
preventDefault
void
Llámalo para evitar que se muestre el menú contextual.
La función
preventDefault
se ve de la siguiente manera:() => {...}
-
-
-
-
create
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 te enteres 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 que se usaron para crear el elemento
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
-
muestra
string | número
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) => {...}
-
string | número
El ID del elemento de menú contextual que se quitará.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
-
-
quitarTodos
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
string | número
El ID del elemento 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
-
activado
booleano opcional
El estado de una casilla de verificación o de un elemento de selección: verdadero para los elementos seleccionados y falso para aquellos no seleccionados. Solo se puede seleccionar 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 la que aparecerá este elemento de menú.
-
documentUrlPatterns
string[] opcional
Te permite restringir el elemento para aplicarlo únicamente a los documentos cuya URL coincida con uno de los patrones especificados. (Esto también se aplica a los marcos). Para obtener detalles sobre el formato de un patrón, consulta Patrones de coincidencia.
-
habilitado
booleano opcional
Si este elemento del menú contextual está habilitado o inhabilitado.
-
parentId
string | número opcional
Es 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 un 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 etiquetas de anclaje. -
título
string opcional
El texto que se mostrará en el artículo
-
tipo
ItemType opcional
Es el tipo de elemento de menú.
-
onclick
void optional
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
Información sobre el elemento en el que se hizo clic y el contexto en el que se hizo clic.
-
ContextType
Los diferentes contextos en los que puede aparecer un menú. Especificar “all” equivale a la combinación de todos los demás contextos.
Enum
“todos”
“página”
“frame”
“selección”
“vínculo”
“editable”
“imagen”
“video”
“audio”
DialogController
Se adjuntó la interfaz a dialog
eventos del DOM.
Propiedades
-
cancelar
void
Rechazar 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:() => {...}
-
Aceptar
void
Acepta el diálogo. Equivale a hacer clic en Aceptar en un diálogo
alert
,confirm
oprompt
.La función
ok
se ve de la siguiente manera:(response?: string) => {...}
-
respuesta
string opcional
Es la cadena de respuesta que se le proporciona al invitado cuando se acepta un diálogo de
prompt
.
-
DownloadPermissionRequest
Es el tipo de objeto request
que acompaña a un evento download
permissionrequest
del DOM.
Propiedades
-
requestMethod
string
El tipo de solicitud HTTP (p.ej.,
GET
) asociado con 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
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 filesystem
permissionrequest
del DOM.
Propiedades
-
url
string
La URL del marco 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
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ó en 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
-
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 fullscreen
permissionrequest
del DOM.
Propiedades
-
origin
string
El origen del fotograma 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
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 geolocation
permissionrequest
del DOM.
Propiedades
-
url
string
URL de la trama 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
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 hid
permissionrequest
del DOM.
Propiedades
-
url
string
La URL del marco 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
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 el CSS que se insertará. Se debe establecer el código o la propiedad del archivo, pero es posible que no ambos estén configurados al mismo tiempo.
Propiedades
-
código
string opcional
Código JavaScript o CSS para insertar.
Advertencia: Ten cuidado cuando uses el parámetro
code
. Si lo usas de forma incorrecta, tu app podría sufrir ataques de secuencias de comandos entre sitios. -
archivo
string opcional
archivo JavaScript o CSS para insertar.
InjectionItems
Es el tipo de elemento de inyección: código o un conjunto de archivos.
Propiedades
-
código
string opcional
Código JavaScript o CSS que se insertarán en las páginas coincidentes.
-
archivos
string[] opcional
La lista de archivos JavaScript o CSS que se insertarán en 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 loadplugin
permissionrequest
del DOM.
Propiedades
-
identificador
string
La cadena identificadora del complemento.
-
nombre
string
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
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 media
permissionrequest
del DOM.
Propiedades
-
url
string
La URL del marco que solicita acceso al contenido multimedia del usuario.
-
allow
void
Permite 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
Se adjuntó la interfaz a newwindow
eventos del DOM.
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
El elemento
webview
al que se debe adjuntar la página de destino
-
-
descartar
void
Cancelar la nueva solicitud de ventana
La función
discard
se ve de la siguiente manera:() => {...}
PointerLockPermissionRequest
Es el tipo de objeto request
que acompaña a un evento pointerLock
permissionrequest
del DOM.
Propiedades
-
lastUnlockedBySelf
boolean
Indica si el marco de solicitud fue o no el cliente más reciente en mantener el bloqueo del puntero.
-
url
string
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
Permite 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á incluida en 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.
WebRequestEventInterface
Interfaz que proporciona acceso a eventos de 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 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 de webRequest, ten en cuenta el siguiente código de ejemplo que bloquea las solicitudes de invitados 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 declarativas de webRequest a través de eventos onRequest
y onMessage
. Consulta declarativeWebRequest
para obtener detalles de la API.
Ten en cuenta que se deben crear instancias de las condiciones y acciones para webRequests de WebView declarativa desde sus contrapartes chrome.webViewRequest.*
. En el siguiente código de ejemplo, se bloquean de forma declarativa todas las solicitudes a "example.com"
en la WebView de 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 webview
.
Enum
"per-origin"
Los cambios de zoom se conservarán en el origen de la página ampliada; es decir, también se aplicarán zoom en todas las demás vistas web de la misma partición que se naveguen a ese mismo origen. Además, los cambios de zoom de per-origin
se guardan con el origen, lo que significa que, cuando navegues a otras páginas del mismo origen, se aplicarán zoom al mismo factor de zoom.
"por vista"
Los cambios de zoom solo se aplican en esta WebView, mientras que los cambios de zoom en otras WebView no afectarán el zoom de esta WebView. Además, los cambios de zoom de per-view
se restablecen en la navegación. navegar por una WebView siempre cargará páginas con sus factores de zoom por origen (dentro del alcance de la partición).
"enabled"
Inhabilita el zoom en la WebView. El contenido se revertirá al nivel de zoom predeterminado y se ignorarán todos los cambios de zoom que se intentes realizar.
Propiedades
contentWindow
Referencia de objeto que se puede usar para publicar mensajes en la página de invitados.
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 aplicarán los elementos que agregues al menú contextual, como imágenes, hipervínculos y páginas.
Tipo
request
Interfaz que proporciona acceso a eventos de 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 postergar la llamada de 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ó webview
al origen (p.ej., foo.com) y llama a webview.addContentScripts
para agregar "myRule", debes esperar a 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,
)
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 posterioresEl parámetro
callback
se ve de la siguiente manera:(success: boolean) => void
-
correcto
boolean
Indica si la navegación se realizó de forma correcta.
-
canGoBack()
chrome.webviewTag.canGoBack()
Indica si es posible retroceder o no 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
-
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
.
Muestra
-
boolean
captureVisibleRegion()
chrome.webviewTag.captureVisibleRegion(
options?: ImageDetails,
callback: function,
)
Captura la región visible de la WebView.
Parámetros
-
opciones
ImageDetails opcional
-
callback
función
El parámetro
callback
se ve de la siguiente manera:(dataUrl: string) => void
-
dataUrl
string
Una URL de datos que codifica una imagen del área visible de la pestaña capturada. Se puede asignar al “src” de un elemento de imagen HTML para mostrar.
-
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 que determinan 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.
En el siguiente código de muestra, se 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
cualquiera[] 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
string
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. Se puede omitir
results
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,
)
Navega hacia adelante 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ó de forma correcta.
-
getAudioState()
chrome.webviewTag.getAudioState(
callback: function,
)
Consulta el estado del audio.
Parámetros
-
callback
función
El parámetro
callback
se ve de la siguiente manera:(audible: boolean) => void
-
Audible
boolean
-
getProcessId()
chrome.webviewTag.getProcessId()
Muestra el ID de proceso interno de Chrome para el proceso actual de la página web invitada, lo que permite a los incorporaciones saber cuántos invitados se verán afectados si 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 muestra la noción almacenada en caché de la incorporación del ID del proceso actual. El ID de proceso no es el mismo que el del sistema operativo.
Muestra
-
número
getUserAgent()
chrome.webviewTag.getUserAgent()
Muestra la cadena de usuario-agente que usa webview
para las solicitudes de páginas de invitado.
Muestra
-
string
getZoom()
chrome.webviewTag.getZoom(
callback: function,
)
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
El factor de zoom actual.
-
getZoomMode()
chrome.webviewTag.getZoomMode(
callback: function,
)
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
El modo de zoom actual de
webview
-
go()
chrome.webviewTag.go(
relativeIndex: number,
callback?: function,
)
Navega a una entrada del historial mediante un índice del historial relativo a 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 el objeto
webview
. Por ejemplo, un valor de2
navegará hacia adelante por 2 entradas del historial si es posible. con un valor de-3
navegarás hacia atrás por 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ó de forma correcta.
-
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 se silenció el audio.
Parámetros
-
callback
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 la WebView.
Parámetros
-
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 del 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 usa para vínculos relativos. De manera opcional, se puede proporcionar una URL virtual para mostrarle al usuario en lugar de la URL de datos.
Parámetros
-
dataUrl
string
La URL de datos que se cargará.
-
baseUrl
string
La URL base que se usará para los vínculos relativos.
-
virtualUrl
string opcional
La URL que se 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 secuencia de comandos desde el mismo webview
.
reload()
chrome.webviewTag.reload()
Vuelve a cargar la página actual de nivel superior.
removeContentScripts()
chrome.webviewTag.removeContentScripts(
scriptNameList?: string[],
)
Quita secuencias de comandos de 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 que se agregaron a
webview
.
setAudioMuted()
chrome.webviewTag.setAudioMuted(
mute: boolean,
)
Establece el estado de silencio de audio de WebView.
Parámetros
-
silenciar
boolean
Silenciar valor del audio
setSpatialNavigationEnabled()
chrome.webviewTag.setSpatialNavigationEnabled(
enabled: boolean,
)
Establece el estado de navegación espacial de la WebView.
Parámetros
-
boolean
Valor del estado de navegación espacial.
setUserAgentOverride()
chrome.webviewTag.setUserAgentOverride(
userAgent: string,
)
Anula la cadena de usuario-agente que usa webview
para las solicitudes de páginas de invitado. La anulación provocará que los valores de encabezado de User-Agent Client Hint y los valores que muestra 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
string
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
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 de webview
actual 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
“borrar”
| “keep”
| "activate"
opcionalDetermina qué hacer con la coincidencia activa después de que haya finalizado la sesión de búsqueda.
clear
borrará el resaltado sobre la coincidencia activa.keep
mantendrá la coincidencia activa destacada.activate
mantendrá la coincidencia activa destacada y simulará el clic de un usuario en ella. La acción predeterminada eskeep
.
terminate()
chrome.webviewTag.terminate()
Finaliza de manera forzosa el proceso de renderizado de la página web invitada. Es posible que esto afecte a varias etiquetas webview
de la app actual si comparten el mismo proceso, pero no a las etiquetas webview
de otras apps.
Eventos
close
chrome.webviewTag.close.addListener(
callback: function,
)
Se activa cuando la ventana del invitado intenta cerrarse.
El siguiente código de ejemplo permite navegar de webview
a about:blank
cuando el invitado 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.
El siguiente código de ejemplo reenvía todos los mensajes de registro a la consola de la incorporación 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 de 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 después de cargar 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 mediante window.alert
, window.confirm
o window.prompt
.
Si controlas este evento, se bloqueará el proceso de invitado hasta que se 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
función
El parámetro
callback
se ve de la siguiente manera:(messageType: "alert"
| "confirm"
| "prompt"
, messageText: string, dialog: DialogController) => void-
messageType
“alerta”
| “confirmar”
| “mensaje”
-
messageText
string
-
diálogo
-
exit
chrome.webviewTag.exit.addListener(
callback: function,
)
Se activa cuando ha finalizado el proceso que procesa el contenido web del invitado.
El siguiente código de ejemplo 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
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 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
boolean
-
finalUpdate
string
-
loadabort
chrome.webviewTag.loadabort.addListener(
callback: function,
)
Se activa cuando se anula una carga de nivel superior sin confirmar. Se mostrará un mensaje de error en la consola, a menos que el evento esté evitado de forma predeterminada.
Nota: Cuando se anula una carga de recurso, un evento loadabort
va seguido de 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 de JavaScript, se activará loadabort
y, luego, se navegará 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: "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
string
-
isTopLevel
boolean
-
código
número
-
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"
-
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 de documento de submarco, 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
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
función
El parámetro
callback
se ve de la siguiente manera:(oldUrl: string, newUrl: string, isTopLevel: boolean) => void
-
oldUrl
string
-
newUrl
string
-
isTopLevel
boolean
-
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
boolean
-
loadstop
chrome.webviewTag.loadstop.addListener(
callback: function,
)
Se activa cuando se completan todas las cargas a nivel del marco en una página de invitado (incluidos todos sus marcos secundarios). Esto incluye la navegación dentro del documento actual y las cargas a nivel de documento de submarco, pero no incluye las cargas de recursos asíncronas. Este evento se activa cada vez que la cantidad de cargas de nivel de documento pasa de una (o más) a cero. Por ejemplo, si una página que ya terminó de cargarse (es decir, loadstop
ya se activó una vez) crea un nuevo iframe que carga una página y, luego, se activa una segunda loadstop
cuando se completa la carga de la página del iframe. Este patrón comúnmente se observa en páginas que cargan anuncios.
Nota: Cuando se anula una carga confirmada, un evento loadstop
finalmente seguirá a un evento loadabort
, incluso si se anularon todas las cargas confirmadas desde el último evento loadstop
(si lo hubiera).
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.
Con el siguiente código de ejemplo, se crea una nueva webview
en la incorporación y se navega por ella 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: "ignore"
| "save_to_disk"
| "current_tab"
| "new_background_tab"
| "new_foreground_tab"
| "new_window"
| "new_popup"
) => void-
en la ventana modal.
-
targetUrl
string
-
initialWidth
número
-
initialHeight
número
-
nombre
string
-
windowOpenDisposition
“ignorar”
| "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 al insertado.
El siguiente código de ejemplo permitirá que la página de invitado acceda a la API de webkitGetUserMedia
. Ten en cuenta que una 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
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”
| "geolocation"
| "pointerLock"
| "descargar"
| "loadplugin"
| “sistema de archivos”
| "pantalla completa"
| “oculto”
-
request
objeto
-
responsive
chrome.webviewTag.responsive.addListener(
callback: function,
)
Se activa cuando el proceso de renderización del contenido web invitado vuelve a responder después de dejar de responder.
En el siguiente código de ejemplo, se atenuará o desvanecerá el elemento webview
cuando responda o deje de responder:
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 mediante 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 procesa el contenido web del invitado deja de responder. Si el invitado vuelve a responder, este evento se generará una vez con un evento responsivo que coincida.
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
-