chrome.webviewTag

Descrizione

Utilizza il tag webview per caricare attivamente contenuti live dal web tramite la rete e incorporarli nella tua app 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 (vedi Utilizzo).

Autorizzazioni

webview

Tipi

ClearDataOptions

Opzioni che determinano quali dati devono essere cancellati da clearData.

Proprietà

  • da

    number (facoltativo)

    Cancella i dati accumulati in questa data o in una successiva, rappresentati in millisecondi dall'epoca (accessibili tramite il metodo getTime dell'oggetto JavaScript Date). Se assente, 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

    booleano facoltativo

    Appcache dei siti web.

  • cache

    booleano facoltativo

    Chrome 44+

    Da Chrome 43. La cache del browser. Nota: quando rimuovi i dati, viene svuotata l'intera cache, non solo l'intervallo specificato.

  • cookie

    booleano facoltativo

    I cookie della partizione.

  • fileSystems

    booleano facoltativo

    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+

    I cookie persistenti della partizione.

  • sessionCookies

    booleano facoltativo

    Chrome 58+

    I cookie di sessione della partizione.

  • webSQL

    booleano facoltativo

    Dati WebSQL dei siti web.

ContentScriptDetails

Chrome 44+

Dettagli dello script di contenuti da inserire. Per ulteriori dettagli, consulta la documentazione relativa agli script dei contenuti.

Proprietà

  • all_frames

    booleano facoltativo

    Se all_frames è true, ciò implica che JavaScript o CSS devono essere inseriti 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. Vengono inseriti nell'ordine in cui appaiono, prima che venga costruito o visualizzato qualsiasi 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 @exclude di Greasemonkey.

  • 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. Inteso per emulare la parola chiave @include di 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 il content script su about:blank e about:srcdoc. Gli script dei contenuti verranno inseriti nelle pagine solo quando il relativo URL ereditato corrisponde a uno dei pattern dichiarati nel campo delle corrispondenze. L'URL di ereditarietà è l'URL del documento che ha creato il frame o la finestra. Gli script dei contenuti non possono essere inseriti nei frame in modalità sandbox.

  • corrisponde a

    string[]

    Specifica le pagine in cui verrà inserito questo script dei contenuti.

  • nome

    stringa

    Il nome del content script da inserire.

  • run_at

    RunAt facoltativo

    Il momento più vicino in cui JavaScript o CSS verrà inserito nella scheda. Il valore predefinito è "document_idle".

ContentWindow

Handle di messaggistica in una finestra ospite.

Proprietà

  • postMessage

    void

    Pubblica un messaggio nei contenuti web incorporati, a condizione che questi mostrino una pagina dell'origine di destinazione. Questo metodo è disponibile una volta completato il caricamento della pagina. Ascolta l'evento contentload e poi chiama il metodo.

    L'ospite potrà inviare risposte all'incorporatore pubblicando un messaggio su event.source nell'evento di messaggio che riceve.

    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 questo aspetto:

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

    • messaggio

      qualsiasi

      Oggetto del messaggio da inviare all'ospite.

    • targetOrigin

      stringa

      Specifica l'origine della finestra dell'ospite per l'invio dell'evento.

ContextMenuCreateProperties

Chrome 44+

Proprietà

  • selezionato

    booleano facoltativo

    Lo stato iniziale di una casella di controllo o di un pulsante di opzione: true per selezionato e false per non selezionato. È possibile selezionare un solo elemento radio alla volta in un determinato gruppo di elementi radio.

  • 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'elemento in modo che venga applicato solo ai documenti il cui URL corrisponde a uno dei pattern specificati. Ciò vale anche per i frame. Per informazioni dettagliate sul formato di un pattern, vedi Pattern di corrispondenza.

  • attivato

    booleano facoltativo

    Indica se questa voce del menu contestuale è attivata o disattivata. Il valore predefinito è true.

  • id

    stringa facoltativa

    L'ID univoco da assegnare a questo 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; in questo modo l'elemento diventa un elemento secondario 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 all'attributo href dei tag di ancoraggio.

  • titolo

    stringa facoltativa

    Il testo da visualizzare nell'elemento. Questo campo è obbligatorio, a meno che type non sia "separator". Quando il contesto è "selezione", puoi utilizzare %s all'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 viene fatto clic sulla voce di menu.

    La funzione onclick ha questo aspetto:

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

    • informazioni

      Informazioni sull'elemento su cui è stato fatto clic e sul contesto in cui è avvenuto il clic.

ContextMenus

Chrome 44+

Proprietà

  • onShow

    Event<functionvoidvoid>

    Attivato prima di mostrare un menu contestuale su questo webview. Può essere utilizzato per disattivare questo menu contestuale chiamando event.preventDefault().

    La funzione onShow.addListener ha questo aspetto:

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

    • callback

      funzione

      Il parametro callback ha il seguente aspetto:

      (event: object) => void

      • evento

        oggetto

        • preventDefault

          void

          Chiama questo metodo per impedire la visualizzazione del menu contestuale.

          La funzione preventDefault ha questo aspetto:

          () => {...}

  • create

    void

    Crea una nuova voce di menu contestuale. Tieni presente che, se si verifica un errore durante la creazione, potresti non scoprirlo fino all'attivazione del callback di creazione (i dettagli saranno in runtime.lastError).

    La funzione create ha questo 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'articolo appena creato.

  • rimuovi

    void

    Rimuove una voce del menu contestuale.

    La funzione remove ha questo aspetto:

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

    • menuItemId

      stringa | numero

      L'ID della voce del 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 questo aspetto:

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

    • callback

      funzione facoltativa

      Il parametro callback ha il seguente aspetto:

      () => void

  • update

    void

    Aggiorna una voce di menu contestuale creata in precedenza.

    La funzione update ha questo 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 create.

    • callback

      funzione facoltativa

      Il parametro callback ha il seguente aspetto:

      () => void

ContextMenuUpdateProperties

Chrome 44+

Proprietà

  • selezionato

    booleano facoltativo

    Lo stato di una casella di controllo o di un pulsante di opzione: true per selezionato e false per non selezionato. È possibile selezionare un solo elemento radio alla volta in un determinato gruppo di elementi radio.

  • contesti

    [ContextType, ...ContextType[]] facoltativo

    Elenco dei contesti in cui verrà visualizzata questa voce di menu.

  • documentUrlPatterns

    string[] facoltativo

    Consente di limitare l'elemento in modo che venga applicato solo ai documenti il cui URL corrisponde a uno dei pattern specificati. Ciò vale anche per i frame. Per informazioni dettagliate sul formato di un pattern, vedi Pattern di corrispondenza.

  • attivato

    booleano facoltativo

    Indica se questa voce del menu contestuale è attivata o disattivata.

  • parentId

    stringa | numero facoltativo

    L'ID di una voce di menu principale; in questo modo l'elemento diventa un elemento secondario di un elemento aggiunto in precedenza. Nota:non puoi impostare un elemento come elemento 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 all'attributo href dei tag di ancoraggio.

  • 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 viene fatto clic sulla voce di menu.

    La funzione onclick ha questo aspetto:

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

    • informazioni

      Informazioni sull'elemento su cui è stato fatto clic e sul contesto in cui è avvenuto il clic.

ContextType

Chrome 44+

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 agli eventi DOM dialog.

Proprietà

  • annulla

    void

    Rifiuta la finestra di dialogo. Equivalente a fare clic su Annulla in una finestra di dialogo confirm o prompt.

    La funzione cancel ha questo aspetto:

    () => {...}

  • ok

    void

    Accetta la finestra di dialogo. Equivalente a fare clic su OK in una finestra di dialogo alert, confirm o prompt.

    La funzione ok ha questo aspetto:

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

    • risposta

      stringa facoltativa

      La stringa di risposta da fornire all'ospite quando accetta una finestra di dialogo prompt.

DialogMessageType

In attesa

Il tipo di finestra di dialogo modale richiesta dall'ospite.

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 allow ha questo aspetto:

    () => {...}

  • deny

    void

    Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se allow non viene chiamato.

    La funzione deny ha questo aspetto:

    () => {...}

ExitReason

In attesa

Stringa che indica il motivo dell'uscita.

Enum

"normal"

"anomalo"

"crashed"

"killed"

"oom killed"

"oom"

"failed to launch"

"integrity failure"

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 allow ha questo aspetto:

    () => {...}

  • deny

    void

    Rifiuta la richiesta di autorizzazione.

    La funzione deny ha questo aspetto:

    () => {...}

FindCallbackResults

Contiene tutti i risultati della richiesta di ricerca.

Proprietà

  • activeMatchOrdinal

    numero

    Il numero ordinale della partita attuale.

  • 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à

  • indietro

    booleano facoltativo

    Flag per trovare corrispondenze in ordine inverso. Il valore predefinito è false.

  • matchCase

    booleano facoltativo

    Flag per la corrispondenza con distinzione tra maiuscole e minuscole. Il valore predefinito è false.

FullscreenPermissionRequest

Chrome 43 o versioni successive

Il tipo di oggetto request che accompagna un evento DOM fullscreen permissionrequest.

Proprietà

  • origine

    stringa

    L'origine del frame all'interno di webview che ha avviato la richiesta a schermo intero.

  • allow

    void

    Consenti la richiesta di autorizzazione.

    La funzione allow ha questo aspetto:

    () => {...}

  • deny

    void

    Rifiuta la richiesta di autorizzazione.

    La funzione deny ha questo 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 allow ha questo aspetto:

    () => {...}

  • deny

    void

    Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se allow non viene chiamato.

    La funzione deny ha questo aspetto:

    () => {...}

HidPermissionRequest

Chrome 125+

Il tipo di oggetto request che accompagna un evento DOM hid permissionrequest.

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 questo aspetto:

    () => {...}

  • deny

    void

    Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se allow non viene chiamato.

    La funzione deny ha questo aspetto:

    () => {...}

InjectDetails

Dettagli dello script o del CSS da inserire. Devi impostare la proprietà del codice o del 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 può esporre la tua app ad attacchi di cross-site scripting.

  • file

    stringa facoltativa

    File JavaScript o CSS da inserire.

InjectionItems

Chrome 44+

Il tipo di elemento di iniezione: codice o un insieme di file.

Proprietà

  • codice

    stringa facoltativa

    Codice JavaScript o CSS da inserire nelle pagine corrispondenti.

  • file

    string[] facoltativo

    L'elenco dei file JavaScript o CSS da inserire nelle pagine corrispondenti. Questi vengono inseriti nell'ordine in cui appaiono in questo array.

LoadAbortReason

In attesa

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à

  • identificatore

    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 deny non viene chiamato.

    La funzione allow ha questo aspetto:

    () => {...}

  • deny

    void

    Rifiuta la richiesta di autorizzazione.

    La funzione deny ha questo 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 allow ha questo aspetto:

    () => {...}

  • deny

    void

    Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se allow non viene chiamato.

    La funzione deny ha questo aspetto:

    () => {...}

NewWindow

Interfaccia collegata agli eventi DOM newwindow.

Proprietà

  • allegare

    void

    Collega la pagina di destinazione richiesta a un elemento webview esistente.

    La funzione attach ha questo 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 questo aspetto:

    () => {...}

PermissionType

In attesa

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

    Indica se il frame richiedente è stato l'ultimo client a bloccare il puntatore.

  • url

    stringa

    L'URL del frame che richiede il blocco del puntatore.

  • userGesture

    booleano

    Indica se il blocco del puntatore è stato richiesto a seguito di un gesto di input dell'utente.

  • allow

    void

    Consenti la richiesta di autorizzazione.

    La funzione allow ha questo aspetto:

    () => {...}

  • deny

    void

    Rifiuta la richiesta di autorizzazione. Questo è il comportamento predefinito se allow non viene chiamato.

    La funzione deny ha questo aspetto:

    () => {...}

SelectionRect

Descrive un rettangolo nelle coordinate dello schermo.

La semantica di contenimento è simile a quella di un array, ovvero la coordinata (left, top) è considerata contenuta nel rettangolo, ma 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

In attesa

Determina cosa fare con la corrispondenza attiva al termine della sessione di ricerca. clear cancellerà l'evidenziazione della corrispondenza attiva; keep manterrà evidenziata la corrispondenza attiva; activate manterrà evidenziata la corrispondenza attiva e simulerà un clic dell'utente su quella corrispondenza. L'azione predefinita è keep.

Enum

"clear"

"keep"

"attiva"

WebRequestEventInterface

Chrome 44+

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 qualsiasi richiesta ospite 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 dell'API, consulta declarativeWebRequest.

Tieni presente che le condizioni e le azioni per le richieste web declarative della webview devono essere istanziate 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]);

WindowOpenDisposition

In attesa

La disposizione richiesta della nuova finestra.

Enum

"ignore"

"save_to_disk"

"current_tab"

"new_background_tab"

"new_foreground_tab"

"new_window"

"new_popup"

ZoomMode

Chrome 43 o versioni successive

Definisce la gestione dello zoom in webview.

Enum

"per origine"
Le modifiche allo zoom verranno mantenute nell'origine della pagina con zoom, ovvero tutte le altre webview nella stessa partizione che vengono navigate nella stessa origine verranno ingrandite. Inoltre, le modifiche allo zoom vengono salvate con l'origine, il che significa che quando si passa ad altre pagine della stessa origine, tutte avranno lo stesso livello di zoom.per-origin

"per visualizzazione"
Le modifiche allo zoom hanno effetto solo in questa webview e le modifiche allo zoom in altre webview non influiranno sullo zoom di questa webview. Inoltre, le modifiche allo zoom per-viewvengono reimpostate durante la navigazione; la navigazione in una webview caricherà sempre le pagine con i fattori di zoom per origine (nell'ambito della partizione).

"disabled"
Disattiva tutto lo zoom nella webview. Il contenuto tornerà al livello di zoom predefinito e tutte le modifiche allo zoom tentate verranno ignorate.

Proprietà

contentWindow

Riferimento all'oggetto che può essere utilizzato per pubblicare messaggi nella pagina dell'ospite.

contextMenus

Chrome 44+

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 a quali tipi di oggetti si applicano le aggiunte al menu contestuale, ad esempio immagini, link ipertestuali e pagine.

request

Interfaccia che fornisce l'accesso agli eventi webRequest nella pagina ospite.

Metodi

addContentScripts()

Chrome 44+
chrome.webviewTag.addContentScripts(
  contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
)
: void

Aggiunge regole di inserimento di script di contenuti a webview. Quando webview passa a una pagina che corrisponde a una o più regole, gli script associati vengono inseriti. 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 spostato 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 mantenute anche se il processo guest si arresta in modo anomalo o viene interrotto o anche se webview viene riassegnato.

Per ulteriori dettagli, consulta la documentazione relativa agli script dei contenuti.

Parametri

back()

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

Se possibile, torna indietro di una voce della cronologia. Equivalente a go(-1).

Parametri

  • callback

    funzione facoltativa

    Chrome 44+

    Il parametro callback ha 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 posto migliore per chiamarla è loadcommit.

Resi

  • booleano

canGoForward()

chrome.webviewTag.canGoForward(): boolean

Indica se è possibile andare avanti nella cronologia. Lo stato di questa funzione viene memorizzato nella cache e aggiornato prima di ogni loadcommit, quindi il posto migliore per chiamarla è loadcommit.

Resi

  • booleano

captureVisibleRegion()

Chrome 50 o versioni successive
chrome.webviewTag.captureVisibleRegion(
  options?: ImageDetails,
  callback: function,
)
: void

Acquisisce la regione visibile della visualizzazione web.

Parametri

  • opzioni

    ImageDetails facoltativo

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    (dataUrl: string) => void

    • dataUrl

      stringa

      Un URL 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 che determinano quali dati cancellare.

  • 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,
)
: void

Inserisce il codice JavaScript nella pagina ospite.

Il seguente codice di esempio 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 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,
)
: 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 facoltativa

    Il parametro callback ha il seguente aspetto:

    (results?: FindCallbackResults) => void

    • risultati

      FindCallbackResults facoltativo

      Contiene tutti i risultati della richiesta di ricerca. results può 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, passa alla voce successiva della cronologia. Equivalente a go(1).

Parametri

  • callback

    funzione facoltativa

    Chrome 44+

    Il parametro callback ha il seguente aspetto:

    (success: boolean) => void

    • operazione riuscita

      booleano

      Indica se la navigazione è andata a buon fine.

getAudioState()

Chrome 62+
chrome.webviewTag.getAudioState(
  callback: function,
)
: void

Esegue query sullo stato dell'audio.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    (audible: boolean) => void

    • audible

      booleano

getProcessId()

chrome.webviewTag.getProcessId(): number

Restituisce l'ID processo interno di Chrome per il processo corrente della pagina web ospite, consentendo agli incorporatori di sapere quanti ospiti sarebbero interessati dalla terminazione del processo. Due ospiti 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'incorporatore dell'ID processo corrente. L'ID processo non è lo stesso dell'ID processo del sistema operativo.

Resi

  • numero

getUserAgent()

chrome.webviewTag.getUserAgent(): string

Restituisce la stringa user agent utilizzata da webview per le richieste di pagine ospiti.

Resi

  • stringa

getZoom()

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

Restituisce il fattore di zoom attuale.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    (zoomFactor: number) => void

    • zoomFactor

      numero

      Il fattore di zoom attuale.

getZoomMode()

Chrome 43 o versioni successive
chrome.webviewTag.getZoomMode(
  callback: function,
)
: void

Ottiene la modalità di zoom attuale.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    (ZoomMode: ZoomMode) => void

    • ZoomMode

      La modalità di zoom attuale di webview.

go()

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

Passa a una voce della cronologia utilizzando un indice della cronologia relativo alla navigazione corrente. Se la navigazione richiesta è impossibile, questo metodo non ha alcun effetto.

Parametri

  • relativeIndex

    numero

    Indice della cronologia relativa a cui deve essere spostato il webview. Ad esempio, un valore di 2 consente di avanzare di due voci della cronologia, se possibile, mentre un valore di -3 consente di tornare indietro di tre voci.

  • callback

    funzione facoltativa

    Il parametro callback ha 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 facoltativa

    Il parametro callback ha il seguente aspetto:

    () => void

isAudioMuted()

Chrome 62+
chrome.webviewTag.isAudioMuted(
  callback: function,
)
: void

Esegue query per verificare se l'audio è disattivato.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    (muted: boolean) => void

    • audio disattivato

      booleano

isSpatialNavigationEnabled()

Chrome 71+
chrome.webviewTag.isSpatialNavigationEnabled(
  callback: function,
)
: void

Esegue una query per verificare se la navigazione spaziale è abilitata per la webview.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    (enabled: boolean) => void

    • attivato

      booleano

isUserAgentOverridden()

chrome.webviewTag.isUserAgentOverridden(): void

Indica se la stringa 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à visualizzato dall'utente (nella barra degli indirizzi).

print()

chrome.webviewTag.print(): void

Stampa i contenuti di webview. Equivale a chiamare la funzione di stampa dello script da webview stesso.

reload()

chrome.webviewTag.reload(): void

Ricarica la pagina di primo livello corrente.

removeContentScripts()

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

Rimuove gli script di contenuti da un webview.

L'esempio seguente rimuove "myRule", che è stata 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 62+
chrome.webviewTag.setAudioMuted(
  mute: boolean,
)
: void

Imposta lo stato di disattivazione dell'audio della visualizzazione web.

Parametri

  • disattiva l'audio

    booleano

    Valore di disattivazione dell'audio

setSpatialNavigationEnabled()

Chrome 71+
chrome.webviewTag.setSpatialNavigationEnabled(
  enabled: boolean,
)
: void

Imposta lo stato di navigazione spaziale della webview.

Parametri

  • attivato

    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 ospiti. L'override farà sì che i valori dell'intestazione del client hint User-Agent e i valori restituiti da navigator.userAgentData siano vuoti per le richieste di pagine ospiti a cui viene applicato questo 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 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 43 o versioni successive
chrome.webviewTag.setZoomMode(
  ZoomMode: ZoomMode,
  callback?: function,
)
: void

Imposta la modalità di zoom di webview.

Parametri

  • ZoomMode

    Definisce la gestione dello zoom in webview.

  • callback

    funzione facoltativa

    Il parametro callback ha 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. clear cancellerà l'evidenziazione della corrispondenza attiva; keep manterrà evidenziata la corrispondenza attiva; activate manterrà evidenziata la corrispondenza attiva e simulerà 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 sposta webview su 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 ospite registra un messaggio della console.

Il seguente codice di esempio inoltra tutti i messaggi di log alla console dell'incorporatore senza tenere conto del livello di log o di 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,
)

Attivato quando la finestra ospite attiva un evento load, ovvero quando viene caricato un nuovo documento. Non sono inclusi la navigazione della pagina all'interno del documento corrente o i caricamenti asincroni delle risorse.

Il seguente codice di esempio modifica le dimensioni predefinite 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 callback ha 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 ospite finché ogni listener di eventi non restituisce o l'oggetto dialog non diventa irraggiungibile (se è stato chiamato preventDefault()).

Il comportamento predefinito prevede la chiusura della finestra di dialogo.

Parametri

exit

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

Attivato quando il processo di rendering dei contenuti web ospiti è terminato.

Il seguente codice di esempio mostrerà un messaggio di addio ogni volta che la pagina guest 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 callback ha il seguente aspetto:

    (details: object) => void

    • dettagli

      oggetto

      • processID

        numero

        ID interno di Chrome del processo che è stato chiuso.

      • motivo

        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. Ciò potrebbe verificarsi più volte per una singola richiesta di ricerca man mano che 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

      booleano

    • finalUpdate

      stringa

loadabort

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

Attivato quando un caricamento di primo livello è stato interrotto senza essere eseguito. A meno che l'evento non venga impedito, nella console verrà stampato un messaggio di errore.

Nota:quando un caricamento di risorse viene interrotto, a un evento loadabort seguirà un evento loadstop, anche se tutti i caricamenti di cui è stato eseguito il commit 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 reindirizzato a "about:blank".

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

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

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 del subframe, ma non i caricamenti asincroni delle risorse.

Parametri

  • callback

    funzione

    Il parametro callback ha 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 callback ha 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 callback ha 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 subframe) sono stati completati. Sono inclusi la navigazione all'interno del documento corrente e i caricamenti a livello di documento del subframe, ma non i caricamenti asincroni delle risorse. 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 ha già terminato il caricamento (ovvero loadstop (già attivato una volta) crea un nuovo iframe che carica una pagina, quindi viene attivato un secondo loadstop al termine del caricamento della pagina iframe. Questo pattern viene osservato comunemente nelle pagine che caricano gli annunci.

Nota:quando un caricamento definitivo viene interrotto, a un evento loadstop seguirà un evento loadabort, anche se tutti i caricamenti definitivi 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 creerà e navigherà in un nuovo webview nell'incorporatore 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: WindowOpenDisposition) => void

permissionrequest

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

Attivato quando la pagina ospite deve richiedere un'autorizzazione speciale all'incorporatore.

Il seguente codice di esempio concede alla pagina guest l'accesso all'API webkitGetUserMedia. Tieni presente che un'app che utilizza questo codice di esempio deve specificare le autorizzazioni 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: PermissionType, request: object) => void

responsive

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

Attivato quando il processo di rendering dei contenuti web ospiti è tornato a rispondere dopo aver smesso di farlo.

Il seguente codice di esempio mostra la dissolvenza in entrata o in uscita dell'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 callback ha 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. Viene attivato 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 guest non risponde più. Questo evento verrà generato una sola volta con un evento reattivo corrispondente se l'ospite inizia a rispondere di nuovo.

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