Descrizione
Utilizza il tag webview per caricare attivamente contenuti live dal web sulla rete e incorporarli nella tua app di Chrome. La tua 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 (consulta la sezione Utilizzo).
Autorizzazioni
webviewDisponibilità
Tipi
ClearDataOptions
Opzioni che determinano quali dati devono essere cancellati da clearData.
Proprietà
-
da
number optional
Cancella i dati accumulati a partire da questa data, rappresentata in millisecondi dall'epoch (accessibile tramite il metodo getTime dell'oggetto JavaScript
Date). Se non è presente, il valore predefinito è0(che rimuove tutti i dati di navigazione).
ClearDataTypeSet
Un insieme di tipi di dati. Le proprietà mancanti vengono interpretate come false.
Proprietà
-
appcache
boolean facoltativo
Appcache dei siti web.
-
cache
boolean facoltativo
Chrome 44 e versioni successiveDa Chrome 43. La cache del browser. Nota: quando rimuovi i dati, l'intera cache viene cancellata; non è limitata all'intervallo specificato.
-
cookie
boolean facoltativo
I cookie della partizione.
-
fileSystems
boolean facoltativo
File system dei siti web.
-
indexedDB
boolean facoltativo
Dati IndexedDB dei siti web.
-
localStorage
boolean facoltativo
Dati di archiviazione locale dei siti web.
-
persistentCookies
boolean facoltativo
Chrome 58 e versioni successiveI cookie persistenti della partizione.
-
sessionCookies
boolean facoltativo
Chrome 58 e versioni successiveI cookie di sessione della partizione.
-
webSQL
boolean facoltativo
Dati WebSQL dei siti web.
ContentScriptDetails
Dettagli dello script di contenuti da inserire. Per ulteriori dettagli, consulta la documentazione sugli script dei contenuti.
Proprietà
-
all_frames
boolean 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èfalsee 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 vengono visualizzati, prima che venga creato o visualizzato un DOM per la pagina.
-
exclude_globs
string[] facoltativo
Applicato dopo le corrispondenze per escludere gli URL che corrispondono a questo glob. Destinato a emulare la parola chiave Greasemonkey @exclude.
-
exclude_matches
string[] facoltativo
Esclude le pagine in cui altrimenti verrebbe inserito questo script di contenuti.
-
include_globs
string[] facoltativo
Applicato dopo le corrispondenze per includere solo gli URL che corrispondono anche a questo glob. Destinato a emulare la parola chiave Greasemonkey @include.
-
js
InjectionItems facoltativo
Il codice JavaScript o un elenco di file JavaScript da inserire nelle pagine corrispondenti. Questi vengono inseriti nell'ordine in cui vengono visualizzati.
-
match_about_blank
boolean facoltativo
Se inserire lo script dei contenuti in about:blank e about:srcdoc. Gli script dei contenuti verranno inseriti nelle pagine solo se il loro URL ereditato corrisponde a uno dei pattern dichiarati nel campo matches. L'URL di ereditarietà è l'URL del documento che ha creato il frame o la finestra. Gli script dei contenuti non possono essere inseriti in frame con sandbox.
-
corrisponde a
string[]
Specifica le pagine in cui verrà inserito questo script dei contenuti.
-
nome
stringa
Il nome dello script dei contenuti da inserire.
-
run_at
RunAt facoltativo
Il momento più prossimo in cui il codice JavaScript o CSS verrà inserito nella scheda. Il valore predefinito è "document_idle".
ContentWindow
Handle di messaggistica per una finestra ospite.
Proprietà
-
postMessage
void
Pubblica un messaggio nei contenuti web incorporati, a condizione che questi mostrino una pagina dell'origine target. Questo metodo è disponibile una volta completato il caricamento della pagina. Ascolta l'evento
contentloade poi chiama il metodo.L'ospite potrà inviare risposte all'incorporatore pubblicando un messaggio su
event.sourcenell'evento di messaggio che riceve.Questa API è identica all'API postMessage HTML5 per la comunicazione tra pagine web. L'embedder può ascoltare le risposte aggiungendo un listener di eventi
messageal proprio frame.La funzione
postMessageha il seguente aspetto:(message: any, targetOrigin: string) => {...}
-
messaggio
qualsiasi
Oggetto del messaggio da inviare all'ospite.
-
targetOrigin
stringa
Specifica l'origine della finestra ospite per l'invio dell'evento.
-
ContextMenuCreateProperties
Proprietà
-
selezionato
boolean facoltativo
Lo stato iniziale di una casella di controllo o di un pulsante di opzione: true per selezionato e false per non selezionato. In un determinato gruppo di elementi di opzione, è possibile selezionare un solo elemento alla volta.
-
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 solo ai documenti il cui URL corrisponde a uno dei pattern specificati. (Questo vale anche per i frame). Per i dettagli sul formato di un pattern, consulta Pattern di corrispondenza.
-
attivato
boolean facoltativo
Indica se questa voce del menu contestuale è attiva o disattivata. Il valore predefinito è
true. -
id
stringa facoltativa
L'ID univoco da assegnare a questo elemento. Obbligatoria per le pagine degli eventi. Non può essere uguale a un altro ID per questa estensione.
-
parentId
string | number facoltativo
L'ID di una voce di menu principale, che rende la voce secondaria rispetto a una voce aggiunta in precedenza.
-
targetUrlPatterns
string[] facoltativo
Simile a documentUrlPatterns, ma consente di filtrare in base all'attributo
srcdei tag img/audio/video e all'attributohrefdegli anchor tag. -
titolo
stringa facoltativa
Il testo da visualizzare nell'elemento; questo è obbligatorio, a meno che
typenon sia "separator". Quando il contesto è "selection", puoi utilizzare%sall'interno della stringa per mostrare il testo selezionato. Ad esempio, se il valore di questo parametro è "Traduci '%s ' in Pig Latin" e l'utente seleziona la parola "cool", la voce del menu contestuale per la selezione è "Traduci 'cool' in Pig Latin". -
tipo
ItemType facoltativo
Il tipo di voce di menu. Se non specificato, il valore predefinito è "normal".
-
onclick
void optional
Una funzione che verrà richiamata quando si fa clic sulla voce di menu.
La funzione
onclickha il seguente aspetto:(info: OnClickData) => {...}
-
informazioni
Informazioni sull'elemento selezionato e sul contesto in cui è avvenuto il clic.
-
ContextMenus
Proprietà
-
onShow
Event<functionvoidvoid>
Attivato prima di mostrare un menu contestuale su questo
webview. Può essere utilizzato per disattivare questo menu contestuale chiamandoevent.preventDefault().La funzione
onShow.addListenerha il seguente aspetto:(callback: function) => {...}
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(event: object) => void
-
evento
oggetto
-
preventDefault
void
Chiamalo per impedire la visualizzazione del menu contestuale.
La funzione
preventDefaultha il seguente aspetto:() => {...}
-
-
-
-
create
void
Crea una nuova voce del menu contestuale. Tieni presente che se si verifica un errore durante la creazione, potresti non scoprirlo finché non viene attivato il callback di creazione (i dettagli saranno in
runtime.lastError).La funzione
createha il seguente aspetto:(createProperties: object, callback?: function) => {...}
-
createProperties
oggetto
Le proprietà utilizzate per creare l'elemento
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
-
returns
string | number
L'ID dell'elemento appena creato.
-
-
rimuovi
void
Rimuove una voce del menu contestuale.
La funzione
removeha il seguente aspetto:(menuItemId: string | number, callback?: function) => {...}
-
string | number
L'ID della voce del menu contestuale da rimuovere.
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
-
-
removeAll
void
Rimuove tutte le voci del menu contestuale aggiunte a questo
webview.La funzione
removeAllha il seguente aspetto:(callback?: function) => {...}
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
-
-
update
void
Aggiorna una voce del menu contestuale creata in precedenza.
La funzione
updateha il seguente aspetto:(id: string | number, updateProperties: object, callback?: function) => {...}
-
id
string | number
L'ID dell'elemento da aggiornare.
-
updateProperties
oggetto
Le proprietà da aggiornare. Accetta gli stessi valori della funzione create.
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
-
ContextMenuUpdateProperties
Proprietà
-
selezionato
boolean facoltativo
Lo stato di una casella di controllo o di un pulsante di opzione: true per selezionato e false per non selezionato. In un determinato gruppo di elementi di opzione, è possibile selezionare un solo elemento alla volta.
-
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 solo ai documenti il cui URL corrisponde a uno dei pattern specificati. (Questo vale anche per i frame). Per i dettagli sul formato di un pattern, consulta Pattern di corrispondenza.
-
attivato
boolean facoltativo
Indica se questa voce del menu contestuale è attiva o disattivata.
-
parentId
string | number facoltativo
L'ID di una voce di menu principale, che rende la voce secondaria rispetto a una voce aggiunta in precedenza. Nota: non puoi modificare un elemento in modo che sia secondario di uno dei suoi elementi secondari.
-
targetUrlPatterns
string[] facoltativo
Simile a documentUrlPatterns, ma consente di filtrare in base all'attributo
srcdei tag img/audio/video e all'attributohrefdegli anchor tag. -
titolo
stringa facoltativa
Il testo da visualizzare nell'elemento
-
tipo
ItemType facoltativo
Il tipo di voce di menu.
-
onclick
void optional
Una funzione che verrà richiamata quando si fa clic sulla voce di menu.
La funzione
onclickha il seguente aspetto:(info: OnClickData) => {...}
-
informazioni
Informazioni sull'elemento selezionato e sul contesto in cui è avvenuto il clic.
-
ContextType
I diversi contesti in cui può essere visualizzato un menu. Specificare "all" equivale alla combinazione di tutti gli altri contesti.
Enum
"all"
"page"
"frame"
"selection"
"link"
"editable"
"image"
"video"
"audio"
DialogController
Interfaccia collegata a dialog eventi DOM.
Proprietà
-
annulla
void
Rifiuta la finestra di dialogo. Equivale a fare clic su Annulla in una finestra di dialogo
confirmoprompt.La funzione
cancelha il seguente aspetto:() => {...} -
ok
void
Accetta la finestra di dialogo. Equivale a fare clic su OK in una finestra di dialogo
alert,confirmoprompt.La funzione
okha il seguente aspetto:(response?: string) => {...}
-
risposta
stringa facoltativa
La stringa di risposta da fornire all'ospite quando accetta una finestra di dialogo
prompt.
-
DialogMessageType
Il tipo di finestra di dialogo modale richiesta dal guest.
Enum
"alert"
"conferma"
"prompt"
DownloadPermissionRequest
Il tipo di oggetto request che accompagna un evento DOM download permissionrequest.
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
allowha il seguente aspetto:() => {...} -
deny
void
Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se
allownon viene chiamato.La funzione
denyha il seguente aspetto:() => {...}
ExitReason
Stringa che indica il motivo dell'uscita.
Enum
"normal"
"abnormal"
"crashed"
"killed"
"oom killed"
"oom"
"failed to launch"
"errore di integrità"
FileSystemPermissionRequest
Il tipo di oggetto request che accompagna un evento DOM filesystem permissionrequest.
Proprietà
-
url
stringa
L'URL del frame che richiede l'accesso al file system locale.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allowha il seguente aspetto:() => {...} -
deny
void
Rifiuta la richiesta di autorizzazione.
La funzione
denyha il seguente aspetto:() => {...}
FindCallbackResults
Contiene tutti i risultati della richiesta di ricerca.
Proprietà
-
activeMatchOrdinal
numero
Il numero ordinale della corrispondenza corrente.
-
annullati
booleano
Indica se questa richiesta di ricerca è stata annullata.
-
numberOfMatches
numero
Il numero di volte in cui
searchTextè stato trovato nella pagina. -
selectionRect
Descrive un rettangolo attorno alla corrispondenza attiva nelle coordinate dello schermo.
FindOptions
Opzioni per la richiesta di ricerca.
Proprietà
-
backward
boolean facoltativo
Flag per trovare le corrispondenze in ordine inverso. Il valore predefinito è
false. -
matchCase
boolean facoltativo
Flag per la corrispondenza con sensibilità alle maiuscole. Il valore predefinito è
false.
FullscreenPermissionRequest
Il tipo di oggetto request che accompagna un evento DOM fullscreen permissionrequest.
Proprietà
-
origine
stringa
L'origine del frame all'interno di
webviewche ha avviato la richiesta di visualizzazione a schermo intero. -
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allowha il seguente aspetto:() => {...} -
deny
void
Rifiuta la richiesta di autorizzazione.
La funzione
denyha il seguente aspetto:() => {...}
GeolocationPermissionRequest
Il tipo di oggetto request che accompagna un evento DOM geolocation permissionrequest.
Proprietà
-
url
stringa
L'URL del frame che richiede l'accesso ai dati di geolocalizzazione.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allowha il seguente aspetto:() => {...} -
deny
void
Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se
allownon viene chiamato.La funzione
denyha 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
allowha il seguente aspetto:() => {...} -
deny
void
Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se
allownon viene chiamato.La funzione
denyha il seguente aspetto:() => {...}
InjectDetails
Dettagli dello script o del CSS da inserire. È necessario impostare la proprietà code o file, ma non entrambe contemporaneamente.
Proprietà
-
codice
stringa facoltativa
Codice JavaScript o CSS da inserire.
Avviso: fai attenzione quando utilizzi il parametro
code. L'utilizzo errato potrebbe esporre la tua app ad attacchi di tipo cross-site scripting. -
file
stringa facoltativa
File JavaScript o CSS da inserire.
InjectionItems
Il tipo di elemento di inserimento: codice o un insieme di file.
Proprietà
-
codice
stringa facoltativa
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.
LoadAbortReason
Stringa che indica il tipo di interruzione che si è verificata. Non è garantito che questa stringa rimanga compatibile con le versioni precedenti tra le release. Non devi analizzare e agire in base ai suoi contenuti. È anche possibile che, in alcuni casi, venga segnalato un errore non elencato qui.
Enum
"ERR_ABORTED"
"ERR_INVALID_URL"
"ERR_DISALLOWED_URL_SCHEME"
"ERR_BLOCKED_BY_CLIENT"
"ERR_ADDRESS_UNREACHABLE"
"ERR_EMPTY_RESPONSE"
"ERR_FILE_NOT_FOUND"
"ERR_UNKNOWN_URL_SCHEME"
LoadPluginPermissionRequest
Il tipo di oggetto request che accompagna un evento DOM loadplugin permissionrequest.
Proprietà
-
identifier
stringa
La stringa identificatore del plug-in.
-
nome
stringa
Il nome visualizzato del plug-in.
-
allow
void
Consenti la richiesta di autorizzazione. Questo è il comportamento predefinito se
denynon viene chiamato.La funzione
allowha il seguente aspetto:() => {...} -
deny
void
Rifiuta la richiesta di autorizzazione.
La funzione
denyha il seguente aspetto:() => {...}
MediaPermissionRequest
Il tipo di oggetto request che accompagna un evento DOM media permissionrequest.
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
allowha il seguente aspetto:() => {...} -
deny
void
Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se
allownon viene chiamato.La funzione
denyha il seguente aspetto:() => {...}
NewWindow
Interfaccia collegata a newwindow eventi DOM.
Proprietà
-
allegare
void
Collega la pagina di destinazione richiesta a un elemento
webviewesistente.La funzione
attachha il seguente aspetto:(webview: object) => {...}
-
webview
oggetto
L'elemento
webviewa cui deve essere collegata la pagina di destinazione.
-
-
Annulla
void
Annullare la richiesta di apertura di una nuova finestra.
La funzione
discardha il seguente aspetto:() => {...}
PermissionType
Il tipo di autorizzazione richiesta.
Enum
"media"
"geolocation"
"pointerLock"
"download"
"loadplugin"
"filesystem"
"fullscreen"
"hid"
PointerLockPermissionRequest
Il tipo di oggetto request che accompagna un evento DOM pointerLock permissionrequest.
Proprietà
-
lastUnlockedBySelf
booleano
Se il frame richiedente era 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
booleano
Indica se il blocco del puntatore è stato richiesto o meno in seguito a un gesto di input dell'utente.
-
allow
void
Consenti la richiesta di autorizzazione.
La funzione
allowha il seguente aspetto:() => {...} -
deny
void
Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se
allownon viene chiamato.La funzione
denyha il seguente aspetto:() => {...}
SelectionRect
Descrive un rettangolo nelle coordinate dello schermo.
La semantica di contenimento è simile a quella degli array, ovvero la coordinata (left, top) è considerata contenuta nel rettangolo, mentre la coordinata (left + width, top) no.
Proprietà
-
altezza
numero
Altezza del rettangolo.
-
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
Larghezza del rettangolo.
StopFindingAction
Determina cosa fare con la corrispondenza attiva al termine della sessione di ricerca. clear cancella l'evidenziazione della corrispondenza attiva; keep mantiene evidenziata la corrispondenza attiva; activate mantiene evidenziata la corrispondenza attiva e simula un clic dell'utente su quella corrispondenza. L'azione predefinita è keep.
Enum
"clear"
"keep"
"activate"
WebRequestEventInterface
Interfaccia che fornisce l'accesso agli eventi webRequest nella pagina ospite. Per informazioni dettagliate sul ciclo di vita di webRequest e sui concetti correlati, consulta l'API delle estensioni chrome.webRequest. Nota: l'evento chrome.webRequest.onActionIgnored non è supportato per le visualizzazioni web.
Per illustrare in che modo l'utilizzo differisce dall'API webRequest delle estensioni, considera il seguente codice di esempio che blocca tutte le richieste degli ospiti per gli URL che corrispondono 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, consulta declarativeWebRequest.
Tieni presente che le condizioni e le azioni per le webRequest webview dichiarative devono essere create come istanze dalle loro 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]);
WindowOpenDisposition
La disposizione richiesta della nuova finestra.
Enum
"ignore"
"save_to_disk"
"current_tab"
"new_background_tab"
"new_foreground_tab"
"new_window"
"new_popup"
ZoomMode
Definisce la modalità di gestione dello zoom in webview.
Enum
"per-origin"
Le modifiche allo zoom verranno mantenute nell'origine della pagina ingrandita, ovvero verranno ingrandite anche tutte le altre visualizzazioni web nella stessa partizione che vengono indirizzate alla stessa origine. Inoltre, le modifiche allo zoom di per-origin vengono salvate con l'origine, il che significa che quando si passa ad altre pagine della stessa origine, lo zoom verrà applicato a tutte con lo stesso fattore di zoom.
"per-view"
Le modifiche allo zoom hanno effetto solo in questa webview e le modifiche allo zoom in altre webview non influiscono sullo zoom di questa webview. Inoltre, le modifiche allo zoom di per-view vengono reimpostate durante la navigazione; la navigazione in una webview caricherà sempre le pagine con i relativi fattori di zoom per origine (nell'ambito della partizione).
"disabled"
Disattiva tutto lo zoom nella webview. I contenuti torneranno al 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 applicare le aggiunte al menu contestuale, ad esempio immagini, link ipertestuali e pagine.
Tipo
request
Interfaccia che fornisce l'accesso agli eventi webRequest nella pagina ospite.
Metodi
addContentScripts()
chrome.webviewTag.addContentScripts(
contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
): void
Aggiunge regole di inserimento di script di contenuti a webview. Quando l'utente webview accede a una pagina corrispondente a una o più regole, vengono inseriti gli script associati. Puoi aggiungere regole o aggiornare quelle esistenti in modo programmatico.
L'esempio seguente aggiunge 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 posticipare la chiamata addContentScripts fino 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 indirizzato all'origine (ad es. 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 conservate anche se il processo guest si arresta in modo anomalo o viene terminato o anche se il webview viene riassegnato.
Per ulteriori dettagli, consulta la documentazione sugli script dei contenuti.
Parametri
-
contentScriptList
Dettagli degli script di contenuti da aggiungere.
back()
chrome.webviewTag.back(
callback?: function,
): void
Se possibile, torna indietro di una voce nella cronologia. Equivalente a go(-1).
Parametri
-
callback
funzione elemento facoltativo
Chrome 44 e versioni successiveIl parametro
callbackha il seguente aspetto:(success: boolean) => void
-
operazione riuscita
booleano
Indica se la navigazione è andata a buon fine.
-
canGoBack()
chrome.webviewTag.canGoBack(): boolean
Indica se è possibile o meno tornare indietro nella cronologia. Lo stato di questa funzione viene memorizzato nella cache e aggiornato prima di ogni loadcommit, quindi il punto migliore per chiamarla è su loadcommit.
Resi
-
booleano
canGoForward()
chrome.webviewTag.canGoForward(): boolean
Indica se è possibile o meno andare avanti nella cronologia. Lo stato di questa funzione viene memorizzato nella cache e aggiornato prima di ogni loadcommit, quindi il punto migliore per chiamarla è su loadcommit.
Resi
-
booleano
captureVisibleRegion()
chrome.webviewTag.captureVisibleRegion(
options?: ImageDetails,
callback: function,
): void
Acquisisce l'area visibile della visualizzazione web.
Parametri
-
opzioni
ImageDetails facoltativo
-
callback
funzione
Il parametro
callbackha 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,
): void
Cancella i dati di navigazione per la partizione webview.
Parametri
-
opzioni
Opzioni che determinano i dati da cancellare.
-
tipi
I tipi di dati da cancellare.
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
executeScript()
chrome.webviewTag.executeScript(
details: InjectDetails,
callback?: function,
): void
Inserisce il codice JavaScript nella pagina ospite.
Il seguente codice campione utilizza l'inserimento 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 elemento facoltativo
Il parametro
callbackha 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,
): void
Avvia una richiesta di ricerca nella pagina.
Parametri
-
searchText
stringa
La stringa da trovare nella pagina.
-
opzioni
FindOptions facoltativo
Opzioni per la richiesta di ricerca.
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(results?: FindCallbackResults) => void
-
risultati
FindCallbackResults facoltativo
Contiene tutti i risultati della richiesta di ricerca.
resultspuò essere omesso se non viene utilizzato nel corpo della funzione di callback, ad esempio se il callback viene utilizzato solo per capire quando la richiesta di ricerca è stata completata.
-
forward()
chrome.webviewTag.forward(
callback?: function,
): void
Se possibile, va avanti di una voce nella cronologia. Equivalente a go(1).
Parametri
-
callback
funzione elemento facoltativo
Chrome 44 e versioni successiveIl parametro
callbackha il seguente aspetto:(success: boolean) => void
-
operazione riuscita
booleano
Indica se la navigazione è andata a buon fine.
-
getAudioState()
chrome.webviewTag.getAudioState(
callback: function,
): void
Esegue query sullo stato dell'audio.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(audible: boolean) => void
-
audible
booleano
-
getProcessId()
chrome.webviewTag.getProcessId(): number
Restituisce l'ID di processo interno di Chrome per il processo corrente della pagina web ospite, consentendo agli incorporatori di sapere quanti ospiti verrebbero interessati dalla terminazione del processo. Due guest condivideranno un processo solo se appartengono alla stessa app e hanno lo stesso ID partizione di archiviazione. La chiamata è sincrona e restituisce la nozione memorizzata nella cache dell'embedder dell'ID di processo corrente. L'ID di processo non corrisponde all'ID di processo del sistema operativo.
Resi
-
numero
getUserAgent()
chrome.webviewTag.getUserAgent(): string
Restituisce la stringa user agent utilizzata da webview per le richieste di pagine ospite.
Resi
-
stringa
getZoom()
chrome.webviewTag.getZoom(
callback: function,
): void
Recupera il fattore di zoom attuale.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(zoomFactor: number) => void
-
zoomFactor
numero
Il fattore di zoom attuale.
-
getZoomMode()
chrome.webviewTag.getZoomMode(
callback: function,
): void
Recupera la modalità di zoom corrente.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(ZoomMode: ZoomMode) => void
-
ZoomMode
La modalità di zoom attuale di
webview.
-
go()
chrome.webviewTag.go(
relativeIndex: number,
callback?: function,
): void
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 indirizzato
webview. Ad esempio, un valore pari a2consente di andare avanti di 2 voci della cronologia, se possibile; un valore pari a-3consente di tornare indietro di 3 voci. -
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(success: boolean) => void
-
operazione riuscita
booleano
Indica se la navigazione è andata a buon fine.
-
insertCSS()
chrome.webviewTag.insertCSS(
details: InjectDetails,
callback?: function,
): void
Inserisce il CSS nella pagina ospite.
Parametri
-
dettagli
Dettagli del CSS da inserire.
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
isAudioMuted()
chrome.webviewTag.isAudioMuted(
callback: function,
): void
Chiede se l'audio è disattivato.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(muted: boolean) => void
-
audio disattivato
booleano
-
isSpatialNavigationEnabled()
chrome.webviewTag.isSpatialNavigationEnabled(
callback: function,
): void
Verifica se la navigazione spaziale è attiva per la visualizzazione web.
Parametri
-
funzione
Il parametro
callbackha il seguente aspetto:(enabled: boolean) => void
-
booleano
-
isUserAgentOverridden()
chrome.webviewTag.isUserAgentOverridden(): void
Indica se la stringa dello user agent di webview è stata sostituita da webviewTag.setUserAgentOverride.
loadDataWithBaseUrl()
chrome.webviewTag.loadDataWithBaseUrl(
dataUrl: string,
baseUrl: string,
virtualUrl?: string,
): void
Carica un URL di dati con un URL di base specificato utilizzato per i link relativi. Facoltativamente, è possibile fornire un URL virtuale da mostrare all'utente anziché l'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 facoltativa
L'URL che verrà mostrato all'utente (nella barra degli indirizzi).
print()
chrome.webviewTag.print(): void
Stampa i contenuti di webview. Ciò equivale a chiamare la funzione di stampa basata su script da webview.
reload()
chrome.webviewTag.reload(): void
Ricarica la pagina di primo livello corrente.
removeContentScripts()
chrome.webviewTag.removeContentScripts(
scriptNameList?: string[],
): void
Rimuove gli script dei contenuti da un webview.
L'esempio seguente rimuove "myRule", che era stata aggiunta in precedenza.
webview.removeContentScripts(['myRule']);
Puoi rimuovere tutte le regole chiamando:
webview.removeContentScripts();
Parametri
-
scriptNameList
string[] facoltativo
Un elenco di nomi di script di contenuti che verranno rimossi. Se l'elenco è vuoto, verranno rimossi tutti gli script dei contenuti aggiunti a
webview.
setAudioMuted()
chrome.webviewTag.setAudioMuted(
mute: boolean,
): void
Imposta lo stato di disattivazione dell'audio della webview.
Parametri
-
disattiva l'audio
booleano
Valore di disattivazione dell'audio
setSpatialNavigationEnabled()
chrome.webviewTag.setSpatialNavigationEnabled(
enabled: boolean,
): void
Imposta lo stato di navigazione spaziale della webview.
Parametri
-
booleano
Valore dello stato di navigazione spaziale.
setUserAgentOverride()
chrome.webviewTag.setUserAgentOverride(
userAgent: string,
): void
Esegui l'override della stringa user agent utilizzata da webview per le richieste di pagine degli ospiti. L'override comporterà che i valori dell'intestazione dei client hint dello user agent e i valori restituiti da navigator.userAgentData siano vuoti per le richieste di pagine ospite a cui viene applicato l'override.
Parametri
-
userAgent
stringa
La stringa user agent da utilizzare.
setZoom()
chrome.webviewTag.setZoom(
zoomFactor: number,
callback?: function,
): void
Modifica il fattore di zoom della pagina. L'ambito e la persistenza di questa modifica sono determinati dalla modalità di zoom corrente della visualizzazione web (vedi webviewTag.ZoomMode).
Parametri
-
zoomFactor
numero
Il nuovo fattore di zoom.
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
setZoomMode()
chrome.webviewTag.setZoomMode(
ZoomMode: ZoomMode,
callback?: function,
): void
Imposta la modalità di zoom di webview.
Parametri
-
ZoomMode
Definisce la modalità di gestione dello zoom in
webview. -
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
stop()
chrome.webviewTag.stop(): void
Interrompe il caricamento della navigazione webview corrente, se in corso.
stopFinding()
chrome.webviewTag.stopFinding(
action?: StopFindingAction,
): void
Termina la sessione di ricerca corrente (cancellando tutte le evidenziazioni) e annulla tutte le richieste di ricerca in corso.
Parametri
-
azione
StopFindingAction facoltativo
Determina cosa fare con la corrispondenza attiva al termine della sessione di ricerca.
clearcancella l'evidenziazione della corrispondenza attiva;keepmantiene evidenziata la corrispondenza attiva;activatemantiene evidenziata la corrispondenza attiva e simula un clic dell'utente su quella corrispondenza. L'azione predefinita èkeep.
terminate()
chrome.webviewTag.terminate(): void
Interrompe forzatamente il processo di rendering della pagina web ospite. Ciò potrebbe influire su più tag webview nell'app corrente se condividono lo stesso processo, ma non influirà sui tag webview in altre app.
Eventi
close
chrome.webviewTag.close.addListener(
callback: function,
)
Attivato quando la finestra ospite tenta di chiudersi.
Il seguente codice di esempio indirizza webview a about:blank quando l'app guest tenta di chiudersi.
webview.addEventListener('close', function() {
webview.src = 'about:blank';
});
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:() => void
consolemessage
chrome.webviewTag.consolemessage.addListener(
callback: function,
)
Attivato quando la finestra ospite registra un messaggio della console.
Il seguente codice di esempio inoltra tutti i messaggi di log alla console dell'embedder indipendentemente 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
callbackha 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,
)
Attivato quando la finestra ospite attiva un evento load, ovvero quando viene caricato un nuovo documento. Questo non include la navigazione nelle pagine all'interno del documento corrente o i caricamenti di risorse asincrone.
Il seguente codice di esempio modifica la dimensione predefinita del carattere 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
callbackha il seguente aspetto:() => void
dialog
chrome.webviewTag.dialog.addListener(
callback: function,
)
Attivato quando la finestra 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 finché ogni listener di eventi non restituisce un valore o l'oggetto dialog non diventa irraggiungibile (se è stato chiamato preventDefault()).
Il comportamento predefinito è l'annullamento della finestra di dialogo.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(messageType: DialogMessageType, messageText: string, dialog: DialogController) => void
-
messageType
-
messageText
stringa
-
finestra di dialogo
-
exit
chrome.webviewTag.exit.addListener(
callback: function,
)
Attivato quando il processo di rendering dei contenuti web guest è terminato.
Il seguente codice di esempio mostrerà un messaggio di saluto ogni volta che la pagina ospite si arresta in modo anomalo:
webview.addEventListener('exit', function(e) {
if (e.reason === 'crash') {
webview.src = 'data:text/plain,Goodbye, world!';
}
});
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(details: object) => void
-
dettagli
oggetto
-
processID
numero
L'ID interno di Chrome del processo che è stato chiuso.
-
reason
Stringa che indica il motivo dell'uscita.
-
-
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 man mano che vengono trovate corrispondenze.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(searchText: string, numberOfMatches: number, activeMatchOrdinal: number, selectionRect: SelectionRect, canceled: boolean, finalUpdate: string) => void
-
searchText
stringa
-
numberOfMatches
numero
-
activeMatchOrdinal
numero
-
selectionRect
-
annullati
booleano
-
finalUpdate
stringa
-
loadabort
chrome.webviewTag.loadabort.addListener(
callback: function,
)
Attivato quando un caricamento di primo livello è stato interrotto senza commit. Verrà stampato un messaggio di errore nella console, a meno che l'evento non sia stato impedito per impostazione predefinita.
Nota: quando il caricamento di una risorsa viene interrotto, un evento loadabort verrà seguito da un evento loadstop, anche se tutti i caricamenti confermati dall'ultimo evento loadstop (se presente) sono stati interrotti.
Nota: quando il caricamento di un URL about o di un URL JavaScript viene interrotto, viene attivato loadabort e poi webview viene indirizzato ad "about:blank".
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(url: string, isTopLevel: boolean, code: number, reason: LoadAbortReason) => void
-
url
stringa
-
isTopLevel
booleano
-
codice
numero
-
reason
-
loadcommit
chrome.webviewTag.loadcommit.addListener(
callback: function,
)
Attivato quando un caricamento è stato eseguito. Sono inclusi la navigazione all'interno del documento corrente e i caricamenti a livello di documento dei subframe, ma non i caricamenti di risorse asincrone.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(url: string, isTopLevel: boolean) => void
-
url
stringa
-
isTopLevel
booleano
-
loadredirect
chrome.webviewTag.loadredirect.addListener(
callback: function,
)
Attivato quando una richiesta di caricamento di primo livello è stata reindirizzata a un URL diverso.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(oldUrl: string, newUrl: string, isTopLevel: boolean) => void
-
oldUrl
stringa
-
newUrl
stringa
-
isTopLevel
booleano
-
loadstart
chrome.webviewTag.loadstart.addListener(
callback: function,
)
Attivato quando è iniziato un caricamento.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(url: string, isTopLevel: boolean) => void
-
url
stringa
-
isTopLevel
booleano
-
loadstop
chrome.webviewTag.loadstop.addListener(
callback: function,
)
Attivato quando tutti i caricamenti a livello di frame in una pagina ospite (inclusi tutti i relativi frame secondari) sono stati completati. Sono inclusi la navigazione all'interno del documento corrente e i caricamenti a livello di documento dei subframe, ma non i caricamenti di risorse asincrone. Questo evento viene attivato ogni volta che il numero di caricamenti a livello di documento passa da uno (o più) a zero. Ad esempio, se una pagina che ha già terminato il caricamento (ovvero loadstop già attivato una volta) crea un nuovo iframe che carica una pagina, poi un secondo loadstop si attiverà al termine del caricamento della pagina dell'iframe. Questo pattern viene comunemente osservato nelle pagine che caricano annunci.
Nota: quando un caricamento confermato viene interrotto, un evento loadstop seguirà un evento loadabort, anche se tutti i caricamenti confermati dall'ultimo evento loadstop (se presente) sono stati interrotti.
Parametri
-
callback
funzione
Il parametro
callbackha 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 creerà e navigherà in un nuovo webview nell'embedder 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
callbackha il seguente aspetto:(window: NewWindow, targetUrl: string, initialWidth: number, initialHeight: number, name: string, windowOpenDisposition: WindowOpenDisposition) => void
-
finestra
-
targetUrl
stringa
-
initialWidth
numero
-
initialHeight
numero
-
nome
stringa
-
windowOpenDisposition
-
permissionrequest
chrome.webviewTag.permissionrequest.addListener(
callback: function,
)
Attivato quando la pagina ospite deve richiedere un'autorizzazione speciale all'incorporatore.
Il seguente codice di esempio concederà alla pagina ospite l'accesso all'API webkitGetUserMedia. Tieni presente che un'app che utilizza questo codice di esempio deve specificare le autorizzazioni del file manifest audioCapture e/o videoCapture:
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'media') {
e.request.allow();
}
});
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(permission: PermissionType, request: object) => void
-
autorizzazione
-
richiesta
oggetto
-
responsive
chrome.webviewTag.responsive.addListener(
callback: function,
)
Viene attivato quando il processo di rendering dei contenuti web ospite torna a rispondere dopo un periodo di mancata risposta.
Il seguente codice di esempio applica la dissolvenza in entrata o in uscita all'elemento webview quando diventa reattivo o non reattivo:
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
callbackha il seguente aspetto:(processID: number) => void
-
processID
numero
-
sizechanged
chrome.webviewTag.sizechanged.addListener(
callback: function,
)
Attivato quando i contenuti web incorporati sono stati ridimensionati tramite autosize. Si attiva solo se autosize è abilitato.
Parametri
-
callback
funzione
Il parametro
callbackha 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 guest non risponde. Questo evento verrà generato una volta con un evento di risposta corrispondente se l'invitato inizia a rispondere di nuovo.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(processID: number) => void
-
processID
numero
-
zoomchange
chrome.webviewTag.zoomchange.addListener(
callback: function,
)
Attivato quando lo zoom della pagina cambia.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:(oldZoomFactor: number, newZoomFactor: number) => void
-
oldZoomFactor
numero
-
newZoomFactor
numero
-