Descrizione
Utilizza il tag webview
per caricare attivamente contenuti in diretta dal web tramite la rete e incorporarli nella tua app di Chrome. L'app può controllare l'aspetto di webview
e interagire con i contenuti web, avviare navigazioni in una pagina web incorporata, reagire agli eventi di errore che si verificano al suo interno e altro ancora (vedi Utilizzo).
Autorizzazioni
webview
Tipi
ClearDataOptions
Opzioni che determinano quali dati devono essere cancellati entro il giorno clearData
.
Proprietà
-
dal
numero facoltativo
Cancella i dati accumulati in questa data o in data successiva, espressi in millisecondi dall'epoca (accessibile tramite il metodo getTime dell'oggetto JavaScript
Date
). Se non è presente, il valore predefinito è0
(operazione che rimuove tutti i dati di navigazione).
ClearDataTypeSet
Un insieme di tipi di dati. Le proprietà mancanti vengono interpretate come false
.
Proprietà
-
appcache
booleano facoltativo
Memorizzazione nella cache delle app dei siti web.
-
cache
booleano facoltativo
Chrome 44 e versioni successiveA partire da Chrome 43. La cache del browser. Nota: quando rimuovi dei dati, viene svuotata l'intera cache; l'operazione non viene limitata all'intervallo specificato.
-
cookie
booleano facoltativo
I cookie della partizione.
-
fileSystems
booleano facoltativo
I file system dei siti web.
-
indexedDB
booleano facoltativo
Dati IndexedDB dei siti web.
-
localStorage
booleano facoltativo
Dati di archiviazione locale dei siti web.
-
persistentCookies
booleano facoltativo
Chrome 58 e versioni successiveI cookie permanenti della partizione.
-
sessionCookies
booleano facoltativo
Chrome 58 e versioni successiveI cookie di sessione della partizione.
-
webSQL
booleano facoltativo
Dati WebSQL dei siti web.
ContentScriptDetails
Dettagli dello script dei contenuti da inserire. Per ulteriori dettagli, consulta la documentazione relativa agli script di contenuti.
Proprietà
-
all_frames
booleano facoltativo
Se
all_frames
ètrue
, significa che il codice JavaScript o CSS deve essere inserito in tutti i frame della pagina corrente. Per impostazione predefinita,all_frames
èfalse
e il codice JavaScript o CSS viene inserito solo nel frame superiore. -
css
InjectionItems facoltativo
Il codice CSS o un elenco di file CSS da inserire nelle pagine corrispondenti. Questi vengono inseriti nell'ordine in cui appaiono, prima che venga creato o visualizzato qualsiasi DOM per la pagina.
-
exclude_globs
string[] facoltativo
Applicata dopo le corrispondenze per escludere gli URL che corrispondono a questo glob. Destinato a emulare la parola chiave @exclude Greasemonkey.
-
exclude_matches
string[] facoltativo
Sono escluse le pagine in cui questo script di contenuti verrebbe altrimenti inserito.
-
include_globs
string[] facoltativo
Applicata dopo le corrispondenze per includere solo gli URL che corrispondono anche a questo glob. Destinato a emulare la parola chiave @include Greasemonkey.
-
js
InjectionItems facoltativo
Il codice JavaScript o un elenco di file JavaScript da inserire nelle pagine corrispondenti. Questi vengono inseriti nell'ordine in cui appaiono.
-
match_about_blank
booleano facoltativo
Se inserire lo script di contenuti su about:blank e about:srcdoc. Gli script di contenuti verranno inseriti nelle pagine solo quando il loro URL ereditato corrisponde a uno dei pattern dichiarati nel campo delle corrispondenze. L'URL ereditato è l'URL del documento che ha creato il frame o la finestra. Gli script di contenuti non possono essere inseriti in frame con sandbox.
-
corrisponde a
stringa[]
Specifica in quali pagine verrà inserito questo script di contenuti.
-
nome
stringa
Il nome dello script dei contenuti da inserire.
-
run_at
RunAt facoltativo
Non appena il codice JavaScript o CSS verrà inserito nella scheda. Il valore predefinito è "document_idle".
ContentWindow
Handle di messaggistica a una finestra Ospite.
Proprietà
-
postMessage
void
Pubblica un messaggio nei contenuti web incorporati, a condizione che il contenuto incorporato mostri una pagina dell'origine di destinazione. Questo metodo è disponibile al termine del caricamento della pagina. Ascolta l'evento
contentload
, quindi chiama il metodo.L'invitato potrà inviare risposte all'autore dell'incorporamento pubblicando un messaggio a
event.source
nell'evento di messaggio ricevuto.Questa API è identica all'API HTML5 postMessage per la comunicazione tra pagine web. L'incorporatore può ascoltare le risposte aggiungendo un listener di eventi
message
al proprio frame.La funzione
postMessage
ha il seguente aspetto:(message: any, targetOrigin: string) => {...}
-
messaggio
Qualsiasi
Oggetto del messaggio da inviare all'ospite.
-
targetOrigin
stringa
Specifica quale deve essere l'origine della finestra ospite affinché l'evento venga inviato.
-
ContextMenuCreateProperties
Proprietà
-
selezionato
booleano facoltativo
Lo stato iniziale di una casella di controllo o di un elemento di opzione: vero per selezionato e falso per deselezionato. È possibile selezionare un solo elemento di opzione alla volta in un determinato gruppo di elementi di opzione.
-
contesti
[ContextType, ...ContextType[]] facoltativo
Elenco dei contesti in cui verrà visualizzata questa voce di menu. Se non specificato, il valore predefinito è ['page'].
-
documentUrlPatterns
string[] facoltativo
Consente di limitare l'applicazione dell'elemento ai documenti il cui URL corrisponde a uno dei pattern specificati. (Questo vale anche per i frame.) Per informazioni dettagliate sul formato di un pattern, consulta la sezione Pattern di corrispondenza.
-
abilitata
booleano facoltativo
Indica se questa voce di menu contestuale è attivata o disattivata. Il valore predefinito è
true
. -
id
stringa facoltativo
L'ID univoco da assegnare all'elemento. Obbligatorio per le pagine degli eventi. Non può essere uguale a un altro ID per questa estensione.
-
parentId
stringa | numero facoltativo
L'ID di una voce di menu principale. Questa opzione rende la voce secondaria di un elemento aggiunto in precedenza.
-
targetUrlPatterns
string[] facoltativo
Simile a documentUrlPatterns, ma consente di filtrare in base all'attributo
src
dei tag img/audio/video e al valorehref
degli anchor tag. -
title
stringa facoltativo
Il testo da visualizzare nell'elemento; questo è obbligatorio a meno che
type
non sia "separatore". Quando il contesto è "selezione", puoi utilizzare%s
nella stringa per mostrare il testo selezionato. Ad esempio, se il valore di questo parametro è "Traduci '%s ' in latino Maiale" e l'utente seleziona la parola "freddo", la voce del menu contestuale per la selezione è "Traduci 'cool' in latino Maiale". -
Tipo
Facoltativo ItemType
Il tipo di voce del menu. Se non specificato, il valore predefinito è "normal".
-
onclick
void facoltativo
Una funzione che viene richiamata quando si fa clic sulla voce di menu.
La funzione
onclick
ha il seguente aspetto:(info: OnClickData) => {...}
-
informazioni
Informazioni sull'articolo su cui è stato fatto clic e sul contesto in cui è avvenuto.
-
ContextMenus
Proprietà
-
onShow
Evento<functionvoidvoid>
Attivata prima di mostrare un menu contestuale su questo
webview
. Può essere utilizzato per disattivare questo menu contestuale chiamando il numeroevent.preventDefault()
.La funzione
onShow.addListener
ha il seguente aspetto:(callback: function) => {...}
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(event: object) => void
-
event
oggetto
-
preventDefault
void
Richiama questo pulsante per impedire la visualizzazione del menu contestuale.
La funzione
preventDefault
ha il seguente aspetto:() => {...}
-
-
-
-
crea
void
Crea una nuova voce di menu contestuale. Tieni presente che se si verifica un errore durante la creazione, potresti non riuscire a saperlo finché non viene attivato il callback di creazione (i dettagli saranno disponibili in
runtime.lastError
).La funzione
create
ha il seguente aspetto:(createProperties: object, callback?: function) => {...}
-
createProperties
oggetto
Le proprietà utilizzate per creare l'elemento
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
-
returns
stringa | numero
L'ID dell'elemento appena creato.
-
-
remove
void
Rimuove una voce del menu contestuale.
La funzione
remove
ha il seguente aspetto:(menuItemId: string | number, callback?: function) => {...}
-
stringa | numero
L'ID della voce di menu contestuale da rimuovere.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
-
-
removeAll
void
Rimuove tutte le voci del menu contestuale aggiunte a questo
webview
.La funzione
removeAll
ha il seguente aspetto:(callback?: function) => {...}
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
-
-
update
void
Consente di aggiornare una voce di menu contestuale creata in precedenza.
La funzione
update
ha il seguente aspetto:(id: string | number, updateProperties: object, callback?: function) => {...}
-
id
stringa | numero
L'ID dell'articolo da aggiornare.
-
updateProperties
oggetto
Le proprietà da aggiornare. Accetta gli stessi valori della funzione di creazione.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
-
ContextMenuUpdateProperties
Proprietà
-
selezionato
booleano facoltativo
Lo stato di una casella di controllo o di un elemento di opzione: true per il tipo selezionato e false per quello deselezionato. È possibile selezionare un solo elemento di opzione alla volta in un determinato gruppo di elementi di opzione.
-
contesti
[ContextType, ...ContextType[]] facoltativo
Elenco dei contesti in cui verrà visualizzata questa voce di menu.
-
documentUrlPatterns
string[] facoltativo
Consente di limitare l'applicazione dell'elemento ai documenti il cui URL corrisponde a uno dei pattern specificati. (Questo vale anche per i frame.) Per informazioni dettagliate sul formato di un pattern, consulta la sezione Pattern di corrispondenza.
-
abilitata
booleano facoltativo
Indica se questa voce di menu contestuale è attivata o disattivata.
-
parentId
stringa | numero facoltativo
L'ID di una voce di menu principale. Questa opzione rende la voce secondaria di un elemento aggiunto in precedenza. Nota: non puoi modificare un elemento in modo che sia secondario di uno dei suoi discendenti.
-
targetUrlPatterns
string[] facoltativo
Simile a documentUrlPatterns, ma consente di filtrare in base all'attributo
src
dei tag img/audio/video e al valorehref
degli anchor tag. -
title
stringa facoltativo
Il testo da visualizzare nell'elemento
-
Tipo
Facoltativo ItemType
Il tipo di voce del menu.
-
onclick
void facoltativo
Una funzione che viene richiamata quando si fa clic sulla voce di menu.
La funzione
onclick
ha il seguente aspetto:(info: OnClickData) => {...}
-
informazioni
Informazioni sull'articolo su cui è stato fatto clic e sul contesto in cui è avvenuto.
-
ContextType
I diversi contesti in cui può essere visualizzato un menu. Specificare "all" equivale alla combinazione di tutti gli altri contesti.
Enum
"frame"
"link"
"video"
"audio"
DialogController
Interfaccia collegata agli eventi DOM di dialog
.
Proprietà
-
annulla
void
Rifiuta la finestra di dialogo. Equivale a fare clic su Annulla in una finestra di dialogo
confirm
oprompt
.La funzione
cancel
ha il seguente aspetto:() => {...}
-
ok
void
Accetta la finestra di dialogo. Equivale a fare clic su OK in una finestra di dialogo
alert
,confirm
oprompt
.La funzione
ok
ha il seguente aspetto:(response?: string) => {...}
-
risposta
stringa facoltativo
La stringa di risposta da fornire all'ospite quando accetta una finestra di dialogo
prompt
.
-
DownloadPermissionRequest
Il tipo di oggetto request
che accompagna un evento DOM permissionrequest
download
.
Proprietà
-
requestMethod
stringa
Il tipo di richiesta HTTP (ad es.
GET
) associato alla richiesta di download. -
url
stringa
L'URL di download richiesto.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allow
ha il seguente aspetto:() => {...}
-
deny
void
Rifiutare la richiesta di autorizzazione. Questo è il comportamento predefinito se non viene chiamato
allow
.La funzione
deny
ha il seguente aspetto:() => {...}
FileSystemPermissionRequest
Il tipo di oggetto request
che accompagna un evento DOM permissionrequest
filesystem
.
Proprietà
-
url
stringa
L'URL del frame che richiede l'accesso al file system locale.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allow
ha il seguente aspetto:() => {...}
-
deny
void
Rifiutare la richiesta di autorizzazione.
La funzione
deny
ha il seguente aspetto:() => {...}
FindCallbackResults
Contiene tutti i risultati della richiesta di ricerca.
Proprietà
-
activeMatchOrdinal
numero
Il numero ordinale della corrispondenza corrente.
-
annullati
boolean
Indica se questa richiesta di ricerca è stata annullata.
-
numberOfMatches
numero
Il numero di volte in cui è stata trovata una corrispondenza di
searchText
nella pagina. -
selectionRect
Descrive un rettangolo attorno alla corrispondenza attiva nelle coordinate dello schermo.
FindOptions
Opzioni per la richiesta di ricerca.
Proprietà
-
indietro
booleano facoltativo
Segnala per trovare le corrispondenze in ordine inverso. Il valore predefinito è
false
. -
matchCase
booleano facoltativo
Contrassegna per corrispondenza con la sensibilità alle maiuscole. Il valore predefinito è
false
.
FullscreenPermissionRequest
Il tipo di oggetto request
che accompagna un evento DOM permissionrequest
fullscreen
.
Proprietà
-
origine
stringa
L'origine del frame all'interno dell'elemento
webview
che ha avviato la richiesta a schermo intero. -
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allow
ha il seguente aspetto:() => {...}
-
deny
void
Rifiutare la richiesta di autorizzazione.
La funzione
deny
ha il seguente aspetto:() => {...}
GeolocationPermissionRequest
Il tipo di oggetto request
che accompagna un evento DOM permissionrequest
geolocation
.
Proprietà
-
url
stringa
L'URL del frame che richiede l'accesso ai dati di geolocalizzazione.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allow
ha il seguente aspetto:() => {...}
-
deny
void
Rifiutare la richiesta di autorizzazione. Questo è il comportamento predefinito se non viene chiamato
allow
.La funzione
deny
ha il seguente aspetto:() => {...}
HidPermissionRequest
Il tipo di oggetto request
che accompagna un evento DOM permissionrequest
hid
.
Proprietà
-
url
stringa
L'URL del frame che richiede l'accesso all'API HID.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allow
ha il seguente aspetto:() => {...}
-
deny
void
Rifiutare la richiesta di autorizzazione. Questo è il comportamento predefinito se non viene chiamato
allow
.La funzione
deny
ha il seguente aspetto:() => {...}
InjectDetails
Dettagli dello script o del CSS da inserire. È necessario impostare il codice o la proprietà del file, ma non possono essere impostati entrambi contemporaneamente.
Proprietà
-
codice
stringa facoltativo
codice JavaScript o CSS da inserire.
Attenzione: fai attenzione quando utilizzi il parametro
code
. Un utilizzo errato potrebbe aprire la tua app ad attacchi di cross-site scripting. -
file
stringa facoltativo
JavaScript o CSS da inserire.
InjectionItems
Il tipo di elemento di iniezione: codice o un insieme di file.
Proprietà
-
codice
stringa facoltativo
Codice JavaScript o CSS da inserire nelle pagine corrispondenti.
-
file
string[] facoltativo
L'elenco di file JavaScript o CSS da inserire nelle pagine corrispondenti. Questi vengono inseriti nell'ordine in cui appaiono in questo array.
LoadPluginPermissionRequest
Il tipo di oggetto request
che accompagna un evento DOM permissionrequest
loadplugin
.
Proprietà
-
identificatore
stringa
Stringa di identificatore del plug-in.
-
nome
stringa
Il nome visualizzato del plug-in.
-
allow
void
Consenti la richiesta di autorizzazione. Questo è il comportamento predefinito se non viene chiamato
deny
.La funzione
allow
ha il seguente aspetto:() => {...}
-
deny
void
Rifiutare la richiesta di autorizzazione.
La funzione
deny
ha il seguente aspetto:() => {...}
MediaPermissionRequest
Il tipo di oggetto request
che accompagna un evento DOM permissionrequest
media
.
Proprietà
-
url
stringa
L'URL del frame che richiede l'accesso ai contenuti multimediali dell'utente.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allow
ha il seguente aspetto:() => {...}
-
deny
void
Rifiutare la richiesta di autorizzazione. Questo è il comportamento predefinito se non viene chiamato
allow
.La funzione
deny
ha il seguente aspetto:() => {...}
NewWindow
Interfaccia collegata agli eventi DOM di newwindow
.
Proprietà
-
collegare
void
Allega la pagina di destinazione richiesta a un elemento
webview
esistente.La funzione
attach
ha il seguente aspetto:(webview: object) => {...}
-
webview
oggetto
L'elemento
webview
a cui deve essere allegata la pagina di destinazione.
-
-
Annulla
void
Annulla la richiesta di nuova finestra.
La funzione
discard
ha il seguente aspetto:() => {...}
PointerLockPermissionRequest
Il tipo di oggetto request
che accompagna un evento DOM permissionrequest
pointerLock
.
Proprietà
-
lastUnlockedBySelf
boolean
Indica se il frame richiedente è stato o meno il client più recente a mantenere il blocco del puntatore.
-
url
stringa
L'URL del frame che richiede il blocco del puntatore.
-
userGesture
boolean
Indica se il blocco del puntatore è stato richiesto o meno a seguito di un gesto di input dell'utente.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allow
ha il seguente aspetto:() => {...}
-
deny
void
Rifiutare la richiesta di autorizzazione. Questo è il comportamento predefinito se non viene chiamato
allow
.La funzione
deny
ha il seguente aspetto:() => {...}
SelectionRect
Descrive un rettangolo nelle coordinate dello schermo.
La semantica del contenimento è di tipo array; in altre parole, la coordinata (left, top)
è considerata contenuta nel rettangolo, ma non la coordinata (left + width, top)
.
Proprietà
-
altezza
numero
L'altezza del rettangolo.
-
a sinistra
numero
Distanza dal bordo sinistro dello schermo al bordo sinistro del rettangolo.
-
in alto
numero
Distanza dal bordo superiore dello schermo al bordo superiore del rettangolo.
-
larghezza
numero
La larghezza del rettangolo.
WebRequestEventInterface
Interfaccia che fornisce l'accesso agli eventi webRequest sulla pagina ospite. Consulta l'API delle estensioni chrome.webRequest per i dettagli sul ciclo di vita webRequest e sui concetti correlati. Nota: l'evento chrome.webRequest.onActionIgnored non è supportato per WebView.
Per illustrare le differenze nell'utilizzo dell'API webRequest, considera il seguente codice di esempio che blocca eventuali richieste degli invitati relative a URL corrispondenti a *://www.evil.com/*
:
webview.request.onBeforeRequest.addListener(
function(details) { return {cancel: true}; },
{urls: ["*://www.evil.com/*"]},
["blocking"]);
Inoltre, questa interfaccia supporta le regole webRequest dichiarative tramite gli eventi onRequest
e onMessage
. Per i dettagli sull'API, visita la pagina declarativeWebRequest
.
Tieni presente che le condizioni e le azioni per le richieste webView dichiarative devono essere create un'istanza dalle rispettive controparti chrome.webViewRequest.*
. Il seguente codice di esempio blocca in modo dichiarativo tutte le richieste a "example.com"
nella WebView myWebview
:
var rule = {
conditions: [
new chrome.webViewRequest.RequestMatcher({ url: { hostSuffix: 'example.com' } })
],
actions: [ new chrome.webViewRequest.CancelRequest() ]
};
myWebview.request.onRequest.addRules([rule]);
ZoomMode
Definisce la modalità di gestione dello zoom in webview
.
Enum
"per-origin"
Le modifiche di zoom continueranno a essere applicate nell'origine della pagina ingrandita, ad esempio verranno ingrandite anche tutte le altre WebView nella stessa partizione con accesso alla stessa origine. Inoltre, le modifiche di zoom per-origin
vengono salvate con l'origine, il che significa che quando si passa ad altre pagine nella stessa origine, tutte queste modifiche verranno ingrandite con lo stesso fattore di zoom.
"per-view"
Le modifiche dello zoom vengono applicate solo in questa WebView e le modifiche apportate allo zoom in altre WebView non influiscono sullo zoom di questa WebView. Inoltre, le modifiche dello zoom di per-view
vengono reimpostate durante la navigazione. Se esplora un componente WebView, le pagine verranno sempre caricate con i relativi fattori di zoom per origine (nell'ambito della partizione).
"disabilitato"
Disattiva tutto lo zoom nel componente WebView. Verrà ripristinato il livello di zoom predefinito e tutti i tentativi di modifica dello zoom verranno ignorati.
Proprietà
contentWindow
Riferimento all'oggetto che può essere utilizzato per pubblicare messaggi nella pagina Ospite.
Tipo
contextMenus
Simile all'API ContextMenus di Chrome, ma si applica a webview
anziché al browser. Utilizza l'API webview.contextMenus
per aggiungere elementi al menu contestuale di webview
. Puoi scegliere i tipi di oggetti a cui si applicano le aggiunte al menu contestuale, ad esempio immagini, link ipertestuali e pagine.
Tipo
request
Interfaccia che fornisce l'accesso agli eventi webRequest sulla pagina ospite.
Metodi
addContentScripts()
chrome.webviewTag.addContentScripts(
contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
)
Aggiunge regole di inserimento degli script di contenuti a webview
. Quando webview
accede a una pagina corrispondente a una o più regole, gli script associati verranno inseriti. Puoi aggiungere regole o aggiornare le regole esistenti in modo programmatico.
Nel seguente esempio vengono aggiunte due regole a webview
: 'myRule' e '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';
Puoi rinviare la chiamata addContentScripts a quando non devi inserire gli script.
L'esempio seguente mostra come sovrascrivere una regola esistente.
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'}]);
Se webview
è stato navigato verso l'origine (ad esempio, foo.com) e chiama webview.addContentScripts
per aggiungere "myRule", devi attendere la navigazione successiva per inserire gli script. Se vuoi un'iniezione immediata, executeScript
farà la cosa giusta.
Le regole vengono mantenute anche se il processo guest si arresta in modo anomalo o viene interrotto, oppure se viene associato di nuovo webview
.
Per ulteriori dettagli, consulta la documentazione relativa agli script di contenuti.
Parametri
-
contentScriptList
Dettagli degli script di contenuti da aggiungere.
back()
chrome.webviewTag.back(
callback?: function,
)
Se possibile, torna indietro di una voce della cronologia. Equivalente a go(-1)
.
Parametri
-
callback
funzione facoltativa
Chrome 44 e versioni successiveIl parametro
callback
ha il seguente aspetto:(success: boolean) => void
-
operazione riuscita
boolean
Indica se la navigazione è riuscita.
-
canGoBack()
chrome.webviewTag.canGoBack()
Indica se è possibile tornare indietro nella cronologia. Lo stato di questa funzione viene memorizzato nella cache e viene aggiornato prima di ogni loadcommit
, quindi il modo migliore per chiamarla è loadcommit
.
Ritorni
-
boolean
canGoForward()
chrome.webviewTag.canGoForward()
Indica se è possibile spostarsi nella cronologia. Lo stato di questa funzione viene memorizzato nella cache e viene aggiornato prima di ogni loadcommit
, quindi il modo migliore per chiamarla è loadcommit
.
Ritorni
-
boolean
captureVisibleRegion()
chrome.webviewTag.captureVisibleRegion(
options?: ImageDetails,
callback: function,
)
Acquisisce la regione visibile del componente WebView.
Parametri
-
opzioni del modello.
Facoltativo ImageDetails
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(dataUrl: string) => void
-
dataUrl
stringa
Un URL di dati che codifica un'immagine dell'area visibile della scheda acquisita. Può essere assegnato alla proprietà "src" di un elemento Immagine HTML per la visualizzazione.
-
clearData()
chrome.webviewTag.clearData(
options: ClearDataOptions,
types: ClearDataTypeSet,
callback?: function,
)
Cancella i dati di navigazione per la partizione webview
.
Parametri
-
opzioni del modello.
Opzioni che determinano quali dati cancellare.
-
Tipi
I tipi di dati da cancellare.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
executeScript()
chrome.webviewTag.executeScript(
details: InjectDetails,
callback?: function,
)
Inserisce il codice JavaScript nella pagina ospite.
Il seguente codice di esempio utilizza l'iniezione di script per impostare il colore di sfondo della pagina ospite su rosso:
webview.executeScript({ code: "document.body.style.backgroundColor = 'red'" });
Parametri
-
dettagli
Dettagli dello script da eseguire.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(result?: any[]) => void
-
risultato
any[] facoltativo
Il risultato dello script in ogni frame inserito.
-
find()
chrome.webviewTag.find(
searchText: string,
options?: FindOptions,
callback?: function,
)
Avvia una richiesta di ricerca in-page.
Parametri
-
searchText
stringa
La stringa da trovare nella pagina.
-
opzioni del modello.
FindOptions facoltativo
Opzioni per la richiesta di ricerca.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results?: FindCallbackResults) => void
-
risultati
Facoltativo FindCallbackResults
Contiene tutti i risultati della richiesta di ricerca.
results
può essere omesso se non è utilizzato nel corpo della funzione di callback; ad esempio, se il callback viene utilizzato solo per distinguere quando la richiesta di ricerca è stata completata.
-
forward()
chrome.webviewTag.forward(
callback?: function,
)
Spostati in avanti di una voce della cronologia, se possibile. Equivalente a go(1)
.
Parametri
-
callback
funzione facoltativa
Chrome 44 e versioni successiveIl parametro
callback
ha il seguente aspetto:(success: boolean) => void
-
operazione riuscita
boolean
Indica se la navigazione è riuscita.
-
getAudioState()
chrome.webviewTag.getAudioState(
callback: function,
)
Esegue query sullo stato dell'audio.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(audible: boolean) => void
-
audible
boolean
-
getProcessId()
chrome.webviewTag.getProcessId()
Restituisce l'ID di processo interno di Chrome per l'attuale processo della pagina web ospite, consentendo agli incorporatori di sapere quanti guest saranno interessati dall'interruzione del processo. Due invitati condivideranno un processo solo se appartengono alla stessa app e hanno lo stesso ID partizione dello spazio di archiviazione. La chiamata è sincrona e restituisce la nozione memorizzata nella cache dell'incorporatore dell'ID di processo corrente. L'ID processo non corrisponde a quello del sistema operativo.
Ritorni
-
numero
getUserAgent()
chrome.webviewTag.getUserAgent()
Restituisce la stringa dello user agent utilizzata da webview
per le richieste delle pagine ospite.
Ritorni
-
stringa
getZoom()
chrome.webviewTag.getZoom(
callback: function,
)
Restituisce il fattore di zoom corrente.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(zoomFactor: number) => void
-
zoomFactor
numero
Il fattore di zoom corrente.
-
getZoomMode()
chrome.webviewTag.getZoomMode(
callback: function,
)
Consente di acquisire la modalità zoom corrente.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(ZoomMode: ZoomMode) => void
-
ZoomMode
La modalità zoom attuale del dispositivo
webview
.
-
go()
chrome.webviewTag.go(
relativeIndex: number,
callback?: function,
)
Consente di passare a una voce della cronologia utilizzando un indice della cronologia relativo alla navigazione corrente. Se la navigazione richiesta non è possibile, questo metodo non ha alcun effetto.
Parametri
-
relativeIndex
numero
Indice della cronologia relativa a cui deve essere visualizzato
webview
. Ad esempio, il valore2
andrà avanti di due voci della cronologia, se possibile; il valore-3
andrà indietro di tre voci. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(success: boolean) => void
-
operazione riuscita
boolean
Indica se la navigazione è riuscita.
-
insertCSS()
chrome.webviewTag.insertCSS(
details: InjectDetails,
callback?: function,
)
Inserisci il CSS nella pagina ospite.
Parametri
-
dettagli
Dettagli del CSS da inserire.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
isAudioMuted()
chrome.webviewTag.isAudioMuted(
callback: function,
)
Esegue una query per stabilire se l'audio è disattivato.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(muted: boolean) => void
-
audio disattivato
boolean
-
isSpatialNavigationEnabled()
chrome.webviewTag.isSpatialNavigationEnabled(
callback: function,
)
Esegue una query per sapere se la navigazione spaziale è abilitata per il componente WebView.
Parametri
-
funzione
Il parametro
callback
ha il seguente aspetto:(enabled: boolean) => void
-
boolean
-
isUserAgentOverridden()
chrome.webviewTag.isUserAgentOverridden()
Indica se la stringa dello user agent di webview
è stata sostituita o meno da webviewTag.setUserAgentOverride
.
loadDataWithBaseUrl()
chrome.webviewTag.loadDataWithBaseUrl(
dataUrl: string,
baseUrl: string,
virtualUrl?: string,
)
Carica un URL di dati con un URL di base specificato utilizzato per i link relativi. Facoltativamente, puoi fornire un URL virtuale da mostrare all'utente al posto dell'URL dei dati.
Parametri
-
dataUrl
stringa
L'URL dei dati da caricare.
-
baseUrl
stringa
L'URL di base che verrà utilizzato per i link relativi.
-
virtualUrl
stringa facoltativo
L'URL che verrà mostrato all'utente (nella barra degli indirizzi).
print()
chrome.webviewTag.print()
Stampa i contenuti di webview
. Equivale a chiamare la funzione di stampa basata su script dall'webview
stesso.
reload()
chrome.webviewTag.reload()
Ricarica la pagina di primo livello corrente.
removeContentScripts()
chrome.webviewTag.removeContentScripts(
scriptNameList?: string[],
)
Rimuove gli script di contenuti da un webview
.
L'esempio seguente rimuove la regola "myRule" aggiunta in precedenza.
webview.removeContentScripts(['myRule']);
Puoi rimuovere tutte le regole chiamando:
webview.removeContentScripts();
Parametri
-
scriptNameList
string[] facoltativo
Un elenco dei nomi degli script di contenuti che verranno rimossi. Se l'elenco è vuoto, tutti gli script di contenuti aggiunti a
webview
verranno rimossi.
setAudioMuted()
chrome.webviewTag.setAudioMuted(
mute: boolean,
)
Imposta lo stato di disattivazione dell'audio del componente WebView.
Parametri
-
disattiva l'audio
boolean
Valore di disattivazione dell'audio
setSpatialNavigationEnabled()
chrome.webviewTag.setSpatialNavigationEnabled(
enabled: boolean,
)
Imposta lo stato della navigazione spaziale del componente WebView.
Parametri
-
boolean
Valore dello stato della navigazione spaziale.
setUserAgentOverride()
chrome.webviewTag.setUserAgentOverride(
userAgent: string,
)
Esegui l'override della stringa dello user agent utilizzata da webview
per le richieste di pagine ospite. Se esegui l'override, i valori dell'intestazione User-Agent Client Hint e i valori restituiti da navigator.userAgentData
saranno vuoti per le richieste di pagina ospite a cui viene applicato questo override.
Parametri
-
userAgent
stringa
La stringa dello user agent da utilizzare.
setZoom()
chrome.webviewTag.setZoom(
zoomFactor: number,
callback?: function,
)
Modifica il fattore di zoom della pagina. L'ambito e la persistenza di questa modifica sono determinati dalla modalità di zoom corrente del componente WebView (vedi webviewTag.ZoomMode
).
Parametri
-
zoomFactor
numero
Il nuovo fattore di zoom.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
setZoomMode()
chrome.webviewTag.setZoomMode(
ZoomMode: ZoomMode,
callback?: function,
)
Imposta la modalità zoom di webview
.
Parametri
-
ZoomMode
Definisce la modalità di gestione dello zoom in
webview
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
stop()
chrome.webviewTag.stop()
Interrompe il caricamento della navigazione webview
corrente se in corso.
stopFinding()
chrome.webviewTag.stopFinding(
action?: "clear"
| "keep"
| "activate"
,
)
Termina la sessione di ricerca corrente (cancellando tutte le evidenziazioni) e annulla tutte le richieste di ricerca in corso.
Parametri
-
azione
facoltativo
Determina cosa fare con la corrispondenza attiva al termine della sessione di ricerca.
clear
cancellerà l'evidenziazione sulla corrispondenza attiva;keep
manterrà la corrispondenza attiva evidenziata;activate
la manterrà attiva e simulerà un clic dell'utente su quella corrispondenza. L'azione predefinita èkeep
.
terminate()
chrome.webviewTag.terminate()
Arresta forzatamente il processo di rendering della pagina web ospite. Questa operazione potrebbe interessare più tag webview
nell'app corrente se condividono la stessa procedura, ma non influirà su webview
tag in altre app.
Eventi
close
chrome.webviewTag.close.addListener(
callback: function,
)
Viene attivato quando la finestra dell'ospite tenta di chiudersi.
Il codice di esempio seguente consente di navigare nel webview
in about:blank
quando l'ospite tenta di chiudersi.
webview.addEventListener('close', function() {
webview.src = 'about:blank';
});
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:() => void
consolemessage
chrome.webviewTag.consolemessage.addListener(
callback: function,
)
Attivato quando la finestra dell'ospite registra un messaggio della console.
Il codice di esempio seguente inoltra tutti i messaggi di log alla console dell'incorporamento, a prescindere dal livello di log o da altre proprietà.
webview.addEventListener('consolemessage', function(e) {
console.log('Guest page logged a message: ', e.message);
});
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(level: number, message: string, line: number, sourceId: string) => void
-
livello
numero
-
messaggio
stringa
-
linea
numero
-
sourceId
stringa
-
contentload
chrome.webviewTag.contentload.addListener(
callback: function,
)
Si attiva quando la finestra dell'ospite attiva un evento load
, ad esempio quando viene caricato un nuovo documento. Non include la navigazione nelle pagine all'interno del documento attuale o i caricamenti di risorse asincroni.
Il seguente codice di esempio modifica la dimensione predefinita dei caratteri dell'elemento body
dell'ospite dopo il caricamento della pagina:
webview.addEventListener('contentload', function() {
webview.executeScript({ code: 'document.body.style.fontSize = "42px"' });
});
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:() => void
dialog
chrome.webviewTag.dialog.addListener(
callback: function,
)
Viene attivata quando la finestra dell'ospite tenta di aprire una finestra di dialogo modale tramite window.alert
, window.confirm
o window.prompt
.
La gestione di questo evento bloccherà il processo guest fino al ritorno di ciascun listener di eventi o fino a quando l'oggetto dialog
non sarà raggiungibile (se è stato chiamato preventDefault()
).
Il comportamento predefinito è annullare la finestra di dialogo.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(messageType: "alert"
| "confirm"
| "prompt"
, messageText: string, dialog: DialogController) => void-
messageType
-
messageText
stringa
-
finestra di dialogo
-
exit
chrome.webviewTag.exit.addListener(
callback: function,
)
Attivato quando è uscito dal processo di rendering dei contenuti web ospite.
Il seguente codice di esempio mostrerà un messaggio di addio ogni volta che la pagina ospite si blocca:
webview.addEventListener('exit', function(e) {
if (e.reason === 'crash') {
webview.src = 'data:text/plain,Goodbye, world!';
}
});
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(processID: number, reason: "normal"
| "abnormal"
| "crash"
| "kill"
) => void-
processID
numero
-
motivo
-
findupdate
chrome.webviewTag.findupdate.addListener(
callback: function,
)
Attivato quando sono disponibili nuovi risultati di ricerca per una richiesta di ricerca attiva. Questo potrebbe accadere più volte per una singola richiesta di ricerca quando vengono trovate corrispondenze.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(searchText: string, numberOfMatches: number, activeMatchOrdinal: number, selectionRect: SelectionRect, canceled: boolean, finalUpdate: string) => void
-
searchText
stringa
-
numberOfMatches
numero
-
activeMatchOrdinal
numero
-
selectionRect
-
annullati
boolean
-
finalUpdate
stringa
-
loadabort
chrome.webviewTag.loadabort.addListener(
callback: function,
)
Attivato quando un caricamento di primo livello è stato interrotto senza commit. Un messaggio di errore verrà stampato sulla console, a meno che l'evento non sia impedito per impostazione predefinita.
Nota:quando un carico di una risorsa viene interrotto, un evento loadabort
sarà seguito da un evento loadstop
, anche se tutti i caricamenti impegnati dall'ultimo evento loadstop
(se presente) sono stati interrotti.
Nota: quando il caricamento di un URL Informazioni o di un URL JavaScript viene interrotto, viene attivato loadabort
e webview
viene spostato in "about:blank".
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(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
stringa
-
isTopLevel
boolean
-
codice
numero
-
motivo
"ERR_ABORTED"
| "ERR_INVALID_URL"
| "ERR_DISALLOWED_URL_SCHEME"
| "ERR_BLOCKED_BY_CLIENT"
| "ERR_ADDRESS_UNREACHABLE"
| "ERR_EMPTY_RISPOSTA" "ERR_EMPTY_RISPOSTA"
-
loadcommit
chrome.webviewTag.loadcommit.addListener(
callback: function,
)
Attivato quando è stato eseguito il commit di un carico. Ciò include la navigazione all'interno del documento corrente nonché i caricamenti a livello di documento del frame secondario, ma non include i caricamenti asincroni delle risorse.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(url: string, isTopLevel: boolean) => void
-
url
stringa
-
isTopLevel
boolean
-
loadredirect
chrome.webviewTag.loadredirect.addListener(
callback: function,
)
Attivato quando una richiesta di caricamento di primo livello viene reindirizzata a un URL diverso.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(oldUrl: string, newUrl: string, isTopLevel: boolean) => void
-
oldUrl
stringa
-
newUrl
stringa
-
isTopLevel
boolean
-
loadstart
chrome.webviewTag.loadstart.addListener(
callback: function,
)
Attivato quando il carico inizia.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(url: string, isTopLevel: boolean) => void
-
url
stringa
-
isTopLevel
boolean
-
loadstop
chrome.webviewTag.loadstop.addListener(
callback: function,
)
Attivato quando sono stati completati tutti i caricamenti a livello di frame in una pagina guest (inclusi tutti i relativi frame secondari). Ciò include la navigazione all'interno del documento corrente nonché i caricamenti a livello di documento del frame secondario, ma non include i caricamenti asincroni delle risorse. Questo evento si attiva ogni volta che il numero di caricamenti a livello di documento passa da uno (o più) a zero. Ad esempio, se il caricamento di una pagina è già terminato (come loadstop
già attivato una volta) crea un nuovo iframe che carica una pagina, dopodiché viene attivato un secondo loadstop
al termine del caricamento della pagina iframe. Questo pattern è comunemente osservato nelle pagine che caricano annunci.
Nota: quando un carico impegnato viene interrotto, un evento loadstop
alla fine seguirà un evento loadabort
, anche se tutti i caricamenti impegnati dall'ultimo evento loadstop
(se presente) sono stati interrotti.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:() => void
newwindow
chrome.webviewTag.newwindow.addListener(
callback: function,
)
Attivato quando la pagina ospite tenta di aprire una nuova finestra del browser.
Il seguente codice di esempio consente di creare ed esplorare un nuovo webview
nell'incorporamento per ogni nuova finestra richiesta:
webview.addEventListener('newwindow', function(e) {
var newWebview = document.createElement('webview');
document.body.appendChild(newWebview);
e.window.attach(newWebview);
});
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(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-
finestra
-
targetUrl
stringa
-
initialWidth
numero
-
initialHeight
numero
-
nome
stringa
-
windowOpenDisposition
"ignore"
| "save_to_disk"
| "current_tab"
| "new_background_tab"
| "new_foreground_tab"
| "new_window"
| "new_popup"
-
permissionrequest
chrome.webviewTag.permissionrequest.addListener(
callback: function,
)
Attivato quando la pagina ospite deve richiedere un'autorizzazione speciale all'incorporamento.
Il codice di esempio riportato di seguito concede alla pagina ospite l'accesso all'API webkitGetUserMedia
. Tieni presente che un'app che utilizza questo codice di esempio deve specificare le autorizzazioni relative al file manifest audioCapture
e/o videoCapture
:
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'media') {
e.request.allow();
}
});
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(permission: "media"
| "geolocation"
| "pointerLock"
| "download"
| "loadplugin"
| "filesystem"
| "fullscreen"
| "hid"
, request: object) => void-
autorizzazione
"media"
| "geolocation"
| "pointerLock"
| "download"
| "loadplugin"
| "filesystem"
| "schermo intero"
| "hid"
-
richiesta
oggetto
-
responsive
chrome.webviewTag.responsive.addListener(
callback: function,
)
Attivato quando il processo di rendering dei contenuti web degli ospiti torna a rispondere dopo l'interruzione della risposta.
Nel codice di esempio riportato di seguito l'elemento webview
verrà dissolvenza in entrata o in uscita quando diventa reattivo o non risponde:
webview.style.webkitTransition = 'opacity 250ms';
webview.addEventListener('unresponsive', function() {
webview.style.opacity = '0.5';
});
webview.addEventListener('responsive', function() {
webview.style.opacity = '1';
});
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(processID: number) => void
-
processID
numero
-
sizechanged
chrome.webviewTag.sizechanged.addListener(
callback: function,
)
Viene attivato quando i contenuti web incorporati sono stati ridimensionati tramite autosize
. Si attiva solo se autosize
è abilitato.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(oldWidth: number, oldHeight: number, newWidth: number, newHeight: number) => void
-
oldWidth
numero
-
oldHeight
numero
-
newWidth
numero
-
newHeight
numero
-
unresponsive
chrome.webviewTag.unresponsive.addListener(
callback: function,
)
Attivato quando il processo di rendering dei contenuti web degli ospiti non risponde. Questo evento verrà generato una volta con un evento adattabile corrispondente se l'invitato ricomincia a rispondere.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(processID: number) => void
-
processID
numero
-
zoomchange
chrome.webviewTag.zoomchange.addListener(
callback: function,
)
Attivato quando cambia lo zoom della pagina.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(oldZoomFactor: number, newZoomFactor: number) => void
-
oldZoomFactor
numero
-
newZoomFactor
numero
-