chrome.webviewTag

Description

Utilisez la balise webview pour charger activement du contenu en direct depuis le Web sur le réseau et l'intégrer à votre application Chrome. Votre application peut contrôler l'apparence de webview et interagir avec le contenu Web, lancer des navigations dans une page Web intégrée, réagir aux événements d'erreur qui s'y produisent, et plus encore (voir Utilisation).

Autorisations

webview

Types

ClearDataOptions

Options qui déterminent les données à effacer par clearData.

Propriétés

  • depuis

    number facultatif

    Efface les données accumulées à cette date ou après, représentées en millisecondes depuis l'époque (accessibles via la méthode getTime de l'objet JavaScript Date). Si ce paramètre est absent, la valeur par défaut est 0 (qui supprime toutes les données de navigation).

ClearDataTypeSet

Ensemble de types de données. Les propriétés manquantes sont interprétées comme false.

Propriétés

  • appcache

    booléen facultatif

    Les caches d'application des sites Web.

  • cache

    booléen facultatif

    Chrome 44 et versions ultérieures

    Depuis Chrome 43. le cache du navigateur. Remarque : Lorsque vous supprimez des données, l'intégralité du cache est effacée. La suppression n'est pas limitée à la plage que vous spécifiez.

  • cookies

    booléen facultatif

    Cookies de la partition.

  • fileSystems

    booléen facultatif

    Systèmes de fichiers des sites Web.

  • indexedDB

    booléen facultatif

    Données IndexedDB des sites Web.

  • localStorage

    booléen facultatif

    Données de stockage local des sites Web.

  • persistentCookies

    booléen facultatif

    Chrome 58 et versions ultérieures

    Cookies persistants de la partition.

  • sessionCookies

    booléen facultatif

    Chrome 58 et versions ultérieures

    Cookies de session de la partition.

  • webSQL

    booléen facultatif

    Données WebSQL des sites Web.

ContentScriptDetails

Chrome 44 et versions ultérieures

Détails du script de contenu à injecter. Pour en savoir plus, consultez la documentation sur les scripts de contenu.

Propriétés

  • all_frames

    booléen facultatif

    Si all_frames est défini sur true, cela signifie que le code JavaScript ou CSS doit être injecté dans tous les cadres de la page actuelle. Par défaut, all_frames est défini sur false et le code JavaScript ou CSS n'est injecté que dans le frame supérieur.

  • css

    InjectionItems facultatif

    Code CSS ou liste de fichiers CSS à injecter dans les pages correspondantes. Ils sont injectés dans l'ordre dans lequel ils apparaissent, avant que le DOM ne soit construit ou affiché pour la page.

  • exclude_globs

    string[] facultatif

    Appliqué après les correspondances pour exclure les URL correspondant à ce glob. Destiné à émuler le mot clé @exclude de Greasemonkey.

  • exclude_matches

    string[] facultatif

    Exclut les pages dans lesquelles ce script de contenu serait normalement injecté.

  • include_globs

    string[] facultatif

    Appliqué après les correspondances pour n'inclure que les URL qui correspondent également à ce glob. Destiné à émuler le mot clé @include de Greasemonkey.

  • js

    InjectionItems facultatif

    Code JavaScript ou liste de fichiers JavaScript à injecter dans les pages correspondantes. Elles sont injectées dans l'ordre dans lequel elles apparaissent.

  • match_about_blank

    booléen facultatif

    Indique si le script de contenu doit être inséré sur about:blank et about:srcdoc. Les scripts de contenu ne seront injectés sur les pages que lorsque leur URL héritée correspond à l'un des formats déclarés dans le champ "matches". L'URL d'héritage est celle du document qui a créé le frame ou la fenêtre. Les scripts de contenu ne peuvent pas être insérés dans des cadres sandboxés.

  • correspond à

    chaîne[]

    Indique les pages dans lesquelles ce script de contenu sera injecté.

  • nom

    chaîne

    Nom du script de contenu à injecter.

  • run_at

    RunAt facultatif

    Date et heure les plus proches auxquelles le code JavaScript ou CSS sera injecté dans l'onglet. La valeur par défaut est "document_idle".

ContentWindow

Identifiant de messagerie d'une fenêtre invitée.

Propriétés

  • postMessage

    vide

    Publie un message dans le contenu Web intégré, à condition que celui-ci affiche une page provenant de l'origine cible. Cette méthode est disponible une fois le chargement de la page terminé. Écoutez l'événement contentload, puis appelez la méthode.

    L'invité pourra envoyer des réponses à l'intégrateur en publiant un message sur event.source dans l'événement de message qu'il reçoit.

    Cette API est identique à l'API HTML5 postMessage pour la communication entre les pages Web. L'intégrateur peut écouter les réponses en ajoutant un écouteur d'événements message à son propre frame.

    La fonction postMessage se présente comme suit :

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

    • message

      tous

      Objet de message à envoyer à l'invité.

    • targetOrigin

      chaîne

      Indique l'origine de la fenêtre invitée pour que l'événement soit distribué.

ContextMenuCreateProperties

Chrome 44 et versions ultérieures

Propriétés

  • coché

    booléen facultatif

    État initial d'une case à cocher ou d'un bouton radio : "true" pour sélectionné et "false" pour non sélectionné. Dans un groupe de cases d'option, vous ne pouvez en sélectionner qu'une seule à la fois.

  • contexts

    [ContextType, ...ContextType[]] facultatif

    Liste des contextes dans lesquels cet élément de menu s'affichera. Si aucune valeur n'est spécifiée, la valeur par défaut est ['page'].

  • documentUrlPatterns

    string[] facultatif

    Vous permet de limiter l'élément aux documents dont l'URL correspond à l'un des formats indiqués. (Cela s'applique également aux cadres.) Pour en savoir plus sur le format d'un modèle, consultez Formats de correspondance.

  • activé

    booléen facultatif

    Indique si cet élément de menu contextuel est activé ou désactivé. La valeur par défaut est true.

  • id

    chaîne facultative

    Identifiant unique à attribuer à cet élément. Obligatoire pour les pages d'événements. Il ne peut pas être identique à un autre ID pour cette extension.

  • parentId

    string | number facultatif

    ID d'un élément de menu parent. L'élément devient ainsi un enfant d'un élément ajouté précédemment.

  • targetUrlPatterns

    string[] facultatif

    Semblable à documentUrlPatterns, mais vous permet de filtrer en fonction de l'attribut src des balises img/audio/video et de l'attribut href des balises d'ancrage.

  • titre

    chaîne facultative

    Texte à afficher dans l'élément. Ce paramètre est obligatoire, sauf si type est défini sur "separator". Lorsque le contexte est "selection", vous pouvez utiliser %s dans la chaîne pour afficher le texte sélectionné. Par exemple, si la valeur de ce paramètre est "Traduire '%s' en Pig Latin" et que l'utilisateur sélectionne le mot "cool", l'élément de menu contextuel pour la sélection est "Traduire 'cool' en Pig Latin".

  • type

    ItemType facultatif

    Type de l'élément de menu. En l'absence de spécification, la valeur par défaut est "normal".

  • onclick

    void optional

    Fonction qui sera rappelée lorsque l'utilisateur cliquera sur l'élément de menu.

    La fonction onclick se présente comme suit :

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

    • Informations sur l'élément sur lequel l'utilisateur a cliqué et sur le contexte dans lequel le clic s'est produit.

ContextMenus

Chrome 44 et versions ultérieures

Propriétés

  • onShow

    Event<functionvoidvoid>

    Déclenché avant l'affichage d'un menu contextuel sur ce webview. Peut être utilisé pour désactiver ce menu contextuel en appelant event.preventDefault().

    La fonction onShow.addListener se présente comme suit :

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

    • callback

      fonction

      Le paramètre callback se présente comme suit :

      (event: object) => void

      • événement

        objet

        • preventDefault

          vide

          Appelez cette méthode pour empêcher l'affichage du menu contextuel.

          La fonction preventDefault se présente comme suit :

          () => {...}

  • create

    vide

    Crée un élément de menu contextuel. Notez que si une erreur se produit lors de la création, vous ne le saurez peut-être qu'une fois le rappel de création déclenché (les détails se trouveront dans runtime.lastError).

    La fonction create se présente comme suit :

    (createProperties: object, callback?: function) => {...}

    • createProperties

      objet

      Propriétés utilisées pour créer l'élément

    • callback

      function facultatif

      Le paramètre callback se présente comme suit :

      () => void

    • Renvoie

      string | number

      Identifiant de l'élément récemment créé.

  • supprimer

    vide

    Supprime un élément de menu contextuel.

    La fonction remove se présente comme suit :

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

    • menuItemId

      string | number

      ID de l'élément de menu contextuel à supprimer.

    • callback

      function facultatif

      Le paramètre callback se présente comme suit :

      () => void

  • removeAll

    vide

    Supprime tous les éléments de menu contextuel ajoutés à ce webview.

    La fonction removeAll se présente comme suit :

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

    • callback

      function facultatif

      Le paramètre callback se présente comme suit :

      () => void

  • update

    vide

    Met à jour un élément de menu contextuel créé précédemment.

    La fonction update se présente comme suit :

    (id: string | number, updateProperties: object, callback?: function) => {...}

    • id

      string | number

      ID de l'article à modifier.

    • updateProperties

      objet

      Propriétés à mettre à jour. Accepte les mêmes valeurs que la fonction de création.

    • callback

      function facultatif

      Le paramètre callback se présente comme suit :

      () => void

ContextMenuUpdateProperties

Chrome 44 et versions ultérieures

Propriétés

  • coché

    booléen facultatif

    État d'une case à cocher ou d'un bouton radio : "true" (vrai) si l'élément est sélectionné et "false" (faux) s'il ne l'est pas. Dans un groupe de cases d'option, vous ne pouvez en sélectionner qu'une seule à la fois.

  • contexts

    [ContextType, ...ContextType[]] facultatif

    Liste des contextes dans lesquels cet élément de menu s'affichera.

  • documentUrlPatterns

    string[] facultatif

    Vous permet de limiter l'élément aux documents dont l'URL correspond à l'un des formats indiqués. (Cela s'applique également aux cadres.) Pour en savoir plus sur le format d'un modèle, consultez Formats de correspondance.

  • activé

    booléen facultatif

    Indique si cet élément de menu contextuel est activé ou désactivé.

  • parentId

    string | number facultatif

    ID d'un élément de menu parent. L'élément devient ainsi un enfant d'un élément ajouté précédemment. Remarque : Vous ne pouvez pas définir un élément comme enfant de l'un de ses propres descendants.

  • targetUrlPatterns

    string[] facultatif

    Semblable à documentUrlPatterns, mais vous permet de filtrer en fonction de l'attribut src des balises img/audio/video et de l'attribut href des balises d'ancrage.

  • titre

    chaîne facultative

    Texte à afficher dans l'élément

  • type

    ItemType facultatif

    Type de l'élément de menu.

  • onclick

    void optional

    Fonction qui sera rappelée lorsque l'utilisateur cliquera sur l'élément de menu.

    La fonction onclick se présente comme suit :

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

    • Informations sur l'élément sur lequel l'utilisateur a cliqué et sur le contexte dans lequel le clic s'est produit.

ContextType

Chrome 44 et versions ultérieures

Les différents contextes dans lesquels un menu peut apparaître. Spécifier "all" équivaut à la combinaison de tous les autres contextes.

Énumération

"all"

"page"

"frame"

"selection"

"link"

"editable"

"image"

"video"

"audio"

DialogController

Interface associée aux événements DOM dialog.

Propriétés

  • annuler

    vide

    Refusez la boîte de dialogue. Équivaut à cliquer sur "Annuler" dans une boîte de dialogue confirm ou prompt.

    La fonction cancel se présente comme suit :

    () => {...}

  • ok

    vide

    Acceptez la boîte de dialogue. Équivaut à cliquer sur "OK" dans une boîte de dialogue alert, confirm ou prompt.

    La fonction ok se présente comme suit :

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

    • réponse

      chaîne facultative

      Chaîne de réponse à fournir à l'invité lors de l'acceptation d'une boîte de dialogue prompt.

DialogMessageType

En attente

Type de boîte de dialogue modale demandée par l'invité.

Énumération

"alert"

"confirm"

"prompt"

DownloadPermissionRequest

Type d'objet request qui accompagne un événement DOM download permissionrequest.

Propriétés

  • requestMethod

    chaîne

    Type de requête HTTP (par exemple, GET) associé à la demande de téléchargement.

  • url

    chaîne

    URL de téléchargement demandée.

  • allow

    vide

    Autorisez la demande d'autorisation.

    La fonction allow se présente comme suit :

    () => {...}

  • deny

    vide

    Refusez la demande d'autorisation. Il s'agit du comportement par défaut si allow n'est pas appelé.

    La fonction deny se présente comme suit :

    () => {...}

ExitReason

En attente

Chaîne indiquant le motif de la sortie.

Énumération

"normal"

"abnormal"

"crashed"

"killed"

"oom killed"

"oom"

"Échec du lancement"

"integrity failure"

FileSystemPermissionRequest

Type d'objet request qui accompagne un événement DOM filesystem permissionrequest.

Propriétés

  • url

    chaîne

    URL du frame demandant l'accès au système de fichiers local.

  • allow

    vide

    Autorisez la demande d'autorisation.

    La fonction allow se présente comme suit :

    () => {...}

  • deny

    vide

    Refusez la demande d'autorisation.

    La fonction deny se présente comme suit :

    () => {...}

FindCallbackResults

Contient tous les résultats de la requête de recherche.

Propriétés

  • activeMatchOrdinal

    Total

    Numéro ordinal du match en cours.

  • annulée

    booléen

    Indique si cette demande de recherche a été annulée.

  • numberOfMatches

    Total

    Nombre de fois où searchText a été trouvé sur la page.

  • selectionRect

    Décrit un rectangle autour de la correspondance active en coordonnées d'écran.

FindOptions

Options de la requête de recherche.

Propriétés

  • en arrière

    booléen facultatif

    Indicateur permettant de trouver les correspondances dans l'ordre inverse. La valeur par défaut est false.

  • matchCase

    booléen facultatif

    Indicateur de correspondance sensible à la casse. La valeur par défaut est false.

FullscreenPermissionRequest

Chrome 43 et versions ultérieures

Type d'objet request qui accompagne un événement DOM fullscreen permissionrequest.

Propriétés

  • origin

    chaîne

    Origine du frame dans le webview qui a initié la requête plein écran.

  • allow

    vide

    Autorisez la demande d'autorisation.

    La fonction allow se présente comme suit :

    () => {...}

  • deny

    vide

    Refusez la demande d'autorisation.

    La fonction deny se présente comme suit :

    () => {...}

GeolocationPermissionRequest

Type d'objet request qui accompagne un événement DOM geolocation permissionrequest.

Propriétés

  • url

    chaîne

    URL du frame demandant l'accès aux données de géolocalisation.

  • allow

    vide

    Autorisez la demande d'autorisation.

    La fonction allow se présente comme suit :

    () => {...}

  • deny

    vide

    Refusez la demande d'autorisation. Il s'agit du comportement par défaut si allow n'est pas appelé.

    La fonction deny se présente comme suit :

    () => {...}

HidPermissionRequest

Chrome 125 et versions ultérieures

Type d'objet request qui accompagne un événement DOM hid permissionrequest.

Propriétés

  • url

    chaîne

    URL du frame demandant l'accès à l'API HID.

  • allow

    vide

    Autorisez la demande d'autorisation.

    La fonction allow se présente comme suit :

    () => {...}

  • deny

    vide

    Refusez la demande d'autorisation. Il s'agit du comportement par défaut si allow n'est pas appelé.

    La fonction deny se présente comme suit :

    () => {...}

InjectDetails

Détails du script ou du CSS à injecter. Vous devez définir la propriété "code" ou "file", mais pas les deux en même temps.

Propriétés

  • code

    chaîne facultative

    Code JavaScript ou CSS à injecter.

    Avertissement : Soyez prudent lorsque vous utilisez le paramètre code. Une utilisation incorrecte peut rendre votre application vulnérable aux attaques par scripts intersites.

  • fichier

    chaîne facultative

    Fichier JavaScript ou CSS à injecter.

InjectionItems

Chrome 44 et versions ultérieures

Type d'élément d'injection : code ou ensemble de fichiers.

Propriétés

  • code

    chaîne facultative

    Code JavaScript ou CSS à injecter dans les pages correspondantes.

  • fichiers

    string[] facultatif

    Liste des fichiers JavaScript ou CSS à injecter dans les pages correspondantes. Ils sont injectés dans l'ordre dans lequel ils apparaissent dans ce tableau.

LoadAbortReason

En attente

Chaîne indiquant le type d'abandon. Il n'est pas garanti que cette chaîne reste rétrocompatible entre les versions. Vous ne devez pas analyser son contenu ni agir en fonction de celui-ci. Il est également possible que, dans certains cas, une erreur non listée ici soit signalée.

Énumération

"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

Type d'objet request qui accompagne un événement DOM loadplugin permissionrequest.

Propriétés

  • identifiant

    chaîne

    Chaîne d'identification du plug-in.

  • nom

    chaîne

    Nom à afficher du plug-in.

  • allow

    vide

    Autorisez la demande d'autorisation. Il s'agit du comportement par défaut si deny n'est pas appelé.

    La fonction allow se présente comme suit :

    () => {...}

  • deny

    vide

    Refusez la demande d'autorisation.

    La fonction deny se présente comme suit :

    () => {...}

MediaPermissionRequest

Type d'objet request qui accompagne un événement DOM media permissionrequest.

Propriétés

  • url

    chaîne

    URL du frame demandant l'accès aux contenus multimédias de l'utilisateur.

  • allow

    vide

    Autorisez la demande d'autorisation.

    La fonction allow se présente comme suit :

    () => {...}

  • deny

    vide

    Refusez la demande d'autorisation. Il s'agit du comportement par défaut si allow n'est pas appelé.

    La fonction deny se présente comme suit :

    () => {...}

NewWindow

Interface associée aux événements DOM newwindow.

Propriétés

  • joindre

    vide

    Associez la page cible demandée à un élément webview existant.

    La fonction attach se présente comme suit :

    (webview: object) => {...}

    • webview

      objet

      Élément webview auquel la page cible doit être associée.

  • supprimer

    vide

    Annulez la demande de nouvelle fenêtre.

    La fonction discard se présente comme suit :

    () => {...}

PermissionType

En attente

Type d'autorisation demandée.

Énumération

"media"

"geolocation"

"pointerLock"

"download"

"loadplugin"

"filesystem"

"fullscreen"

"hid"

PointerLockPermissionRequest

Type d'objet request qui accompagne un événement DOM pointerLock permissionrequest.

Propriétés

  • lastUnlockedBySelf

    booléen

    Indique si le frame à l'origine de la requête était le client le plus récent à avoir verrouillé le pointeur.

  • url

    chaîne

    URL du frame demandant le verrouillage du pointeur.

  • userGesture

    booléen

    Indique si le verrouillage du pointeur a été demandé à la suite d'un geste de saisie utilisateur.

  • allow

    vide

    Autorisez la demande d'autorisation.

    La fonction allow se présente comme suit :

    () => {...}

  • deny

    vide

    Refusez la demande d'autorisation. Il s'agit du comportement par défaut si allow n'est pas appelé.

    La fonction deny se présente comme suit :

    () => {...}

SelectionRect

Décrit un rectangle en coordonnées d'écran.

La sémantique de confinement est semblable à celle d'un tableau. Autrement dit, la coordonnée (left, top) est considérée comme contenue dans le rectangle, mais pas la coordonnée (left + width, top).

Propriétés

  • hauteur

    Total

    Hauteur du rectangle.

  • gauche

    Total

    Distance entre le bord gauche de l'écran et le bord gauche du rectangle.

  • top

    Total

    Distance entre le bord supérieur de l'écran et le bord supérieur du rectangle.

  • largeur

    Total

    Largeur du rectangle.

StopFindingAction

En attente

Détermine ce qu'il faut faire avec la partie en cours une fois la session de recherche terminée. clear : efface la mise en surbrillance de la correspondance active. keep : conserve la mise en surbrillance de la correspondance active. activate : conserve la mise en surbrillance de la correspondance active et simule un clic de l'utilisateur sur cette correspondance. L'action par défaut est keep.

Énumération

"clear"

"keep"

"activer"

WebRequestEventInterface

Chrome 44 et versions ultérieures

Interface qui permet d'accéder aux événements webRequest sur la page invitée. Consultez l'API d'extension chrome.webRequest pour en savoir plus sur le cycle de vie de webRequest et les concepts associés. Remarque : L'événement chrome.webRequest.onActionIgnored n'est pas compatible avec les WebViews.

Pour illustrer la différence d'utilisation par rapport à l'API webRequest des extensions, prenons l'exemple de code suivant, qui bloque toutes les requêtes d'invités pour les URL correspondant à *://www.evil.com/* :

webview.request.onBeforeRequest.addListener(
  function(details) { return {cancel: true}; },
  {urls: ["*://www.evil.com/*"]},
  ["blocking"]);

De plus, cette interface est compatible avec les règles webRequest déclaratives via les événements onRequest et onMessage. Pour en savoir plus sur l'API, consultez declarativeWebRequest.

Notez que les conditions et les actions pour les webRequests de la WebView déclarative doivent être instanciées à partir de leurs homologues chrome.webViewRequest.*. L'exemple de code suivant bloque de manière déclarative toutes les requêtes adressées à "example.com" sur la WebView myWebview :

var rule = {
  conditions: [
    new chrome.webViewRequest.RequestMatcher({ url: { hostSuffix: 'example.com' } })
  ],
  actions: [ new chrome.webViewRequest.CancelRequest() ]
};
myWebview.request.onRequest.addRules([rule]);

WindowOpenDisposition

En attente

Disposition demandée pour la nouvelle fenêtre.

Énumération

"ignore"

"save_to_disk"

"current_tab"

"new_background_tab"

"new_foreground_tab"

"new_window"

"new_popup"

ZoomMode

Chrome 43 et versions ultérieures

Définit la façon dont le zoom est géré dans webview.

Énumération

"par origine"
Les modifications du zoom sont conservées dans l'origine de la page ayant subi un zoom. Autrement dit, toutes les autres vues Web de la même partition qui sont redirigées vers cette même origine sont également mises à l'échelle. De plus, les modifications du zoom per-origin sont enregistrées avec l'origine. Cela signifie que lorsque vous accédez à d'autres pages de la même origine, elles sont toutes zoomées au même facteur de zoom.

"par vue"
Les modifications du zoom ne prennent effet que dans cette vue Web. Les modifications du zoom dans d'autres vues Web n'affectent pas le zoom de cette vue Web. De plus, les modifications du zoom per-view sont réinitialisées lors de la navigation. La navigation dans une WebView charge toujours les pages avec leurs facteurs de zoom par origine (dans le champ d'application de la partition).

"disabled"
Désactive tout zoom dans la WebView. Le contenu reviendra au niveau de zoom par défaut et toutes les tentatives de modification du zoom seront ignorées.

Propriétés

contentWindow

Référence d'objet pouvant être utilisée pour publier des messages sur la page invitée.

contextMenus

Chrome 44 et versions ultérieures

Semblable à l'API ContextMenus de Chrome, mais s'applique à webview au lieu du navigateur. Utilisez l'API webview.contextMenus pour ajouter des éléments au menu contextuel de webview. Vous pouvez choisir les types d'objets auxquels s'appliquent les éléments ajoutés au menu contextuel, comme les images, les liens hypertexte et les pages.

request

Interface qui permet d'accéder aux événements webRequest sur la page invitée.

Méthodes

addContentScripts()

Chrome 44 et versions ultérieures
chrome.webviewTag.addContentScripts(
  contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
)
: void

Ajoute des règles d'injection de script de contenu à webview. Lorsque le webview accède à une page correspondant à une ou plusieurs règles, les scripts associés sont injectés. Vous pouvez ajouter des règles ou mettre à jour celles qui existent déjà de manière programmatique.

L'exemple suivant ajoute deux règles à webview : "myRule" et "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';

Vous pouvez différer l'appel addContentScripts jusqu'à ce que vous ayez besoin d'injecter des scripts.

L'exemple suivant montre comment remplacer une règle existante.

webview.addContentScripts([{
    name: 'rule',
    matches: ['http://www.foo.com/*'],
    js: { files: ['scriptA.js'] },
    run_at: 'document_start'}]);

// Do something.
webview.src = 'http://www.foo.com/*';
 ...
// Overwrite 'rule' defined before.
webview.addContentScripts([{
    name: 'rule',
    matches: ['http://www.bar.com/*'],
    js: { files: ['scriptB.js'] },
    run_at: 'document_end'}]);

Si webview a été défini sur l'origine (par exemple, foo.com) et appelle webview.addContentScripts pour ajouter "myRule", vous devez attendre la prochaine navigation pour que les scripts soient injectés. Si vous souhaitez une injection immédiate, executeScript fera ce qu'il faut.

Les règles sont conservées même si le processus invité plante ou est arrêté, ou même si webview est réattribué.

Pour en savoir plus, consultez la documentation sur les scripts de contenu.

Paramètres

back()

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

Permet de revenir en arrière d'une entrée dans l'historique, si possible. Équivaut à go(-1).

Paramètres

  • callback

    function facultatif

    Chrome 44 et versions ultérieures

    Le paramètre callback se présente comme suit :

    (success: boolean) => void

    • success

      booléen

      Indique si la navigation a réussi.

canGoBack()

chrome.webviewTag.canGoBack(): boolean

Indique s'il est possible de revenir en arrière dans l'historique. L'état de cette fonction est mis en cache et mis à jour avant chaque loadcommit. Le meilleur endroit pour l'appeler est donc sur loadcommit.

Renvoie

  • booléen

canGoForward()

chrome.webviewTag.canGoForward(): boolean

Indique s'il est possible ou non de parcourir l'historique vers l'avant. L'état de cette fonction est mis en cache et mis à jour avant chaque loadcommit. Le meilleur endroit pour l'appeler est donc sur loadcommit.

Renvoie

  • booléen

captureVisibleRegion()

Chrome 50 et versions ultérieures
chrome.webviewTag.captureVisibleRegion(
  options?: ImageDetails,
  callback: function,
)
: void

Capture la région visible de la WebView.

Paramètres

  • options

    ImageDetails facultatif

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (dataUrl: string) => void

    • dataUrl

      chaîne

      URL de données qui encode une image de la zone visible de l'onglet capturé. Peut être attribué à la propriété "src" d'un élément HTML Image pour l'affichage.

clearData()

chrome.webviewTag.clearData(
  options: ClearDataOptions,
  types: ClearDataTypeSet,
  callback?: function,
)
: void

Efface les données de navigation pour la partition webview.

Paramètres

  • Options permettant de déterminer les données à effacer.

  • Types de données à effacer.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

executeScript()

chrome.webviewTag.executeScript(
  details: InjectDetails,
  callback?: function,
)
: void

Injecte du code JavaScript dans la page invitée.

L'exemple de code suivant utilise l'injection de script pour définir la couleur d'arrière-plan de la page invitée sur rouge :

webview.executeScript({ code: "document.body.style.backgroundColor = 'red'" });

Paramètres

  • détails

    Détails du script à exécuter.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    (result?: any[]) => void

    • résultat

      any[] facultatif

      Résultat du script dans chaque frame injecté.

find()

chrome.webviewTag.find(
  searchText: string,
  options?: FindOptions,
  callback?: function,
)
: void

Lance une requête de recherche sur la page.

Paramètres

  • searchText

    chaîne

    Chaîne à rechercher dans la page.

  • options

    FindOptions facultatif

    Options de la requête de recherche.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    (results?: FindCallbackResults) => void

    • résultats

      Contient tous les résultats de la requête de recherche. results peut être omis s'il n'est pas utilisé dans le corps de la fonction de rappel, par exemple si le rappel n'est utilisé que pour déterminer quand la requête de recherche est terminée.

forward()

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

Avance d'une entrée dans l'historique, si possible. Équivaut à go(1).

Paramètres

  • callback

    function facultatif

    Chrome 44 et versions ultérieures

    Le paramètre callback se présente comme suit :

    (success: boolean) => void

    • success

      booléen

      Indique si la navigation a réussi.

getAudioState()

Chrome 62 et versions ultérieures
chrome.webviewTag.getAudioState(
  callback: function,
)
: void

Interroge l'état audio.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (audible: boolean) => void

    • audible

      booléen

getProcessId()

chrome.webviewTag.getProcessId(): number

Renvoie l'ID de processus interne de Chrome pour le processus actuel de la page Web invitée, ce qui permet aux intégrateurs de savoir combien d'invités seraient concernés par l'arrêt du processus. Deux invités ne partageront un processus que s'ils appartiennent à la même application et ont le même ID de partition de stockage. L'appel est synchrone et renvoie la notion mise en cache par l'intégrateur de l'ID de processus actuel. L'ID de processus n'est pas le même que celui du système d'exploitation.

Renvoie

  • Total

getUserAgent()

chrome.webviewTag.getUserAgent(): string

Renvoie la chaîne user-agent utilisée par webview pour les requêtes de pages invitées.

Renvoie

  • chaîne

getZoom()

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

Récupère le facteur de zoom actuel.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (zoomFactor: number) => void

    • zoomFactor

      Total

      Facteur de zoom actuel.

getZoomMode()

Chrome 43 et versions ultérieures
chrome.webviewTag.getZoomMode(
  callback: function,
)
: void

Récupère le mode de zoom actuel.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (ZoomMode: ZoomMode) => void

    • ZoomMode

      Mode de zoom actuel de webview.

go()

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

Accède à une entrée de l'historique à l'aide d'un index d'historique relatif à la navigation actuelle. Si la navigation demandée est impossible, cette méthode n'a aucun effet.

Paramètres

  • relativeIndex

    Total

    Index de l'historique relatif vers lequel le webview doit être redirigé. Par exemple, une valeur de 2 permet de revenir en avant de deux entrées dans l'historique, si possible, tandis qu'une valeur de -3 permet de revenir en arrière de trois entrées.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    (success: boolean) => void

    • success

      booléen

      Indique si la navigation a réussi.

insertCSS()

chrome.webviewTag.insertCSS(
  details: InjectDetails,
  callback?: function,
)
: void

Injecte le CSS dans la page invitée.

Paramètres

  • détails

    Détails du CSS à insérer.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

isAudioMuted()

Chrome 62 et versions ultérieures
chrome.webviewTag.isAudioMuted(
  callback: function,
)
: void

Indique si le son est coupé.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (muted: boolean) => void

    • son coupé

      booléen

isSpatialNavigationEnabled()

Chrome 71 et versions ultérieures
chrome.webviewTag.isSpatialNavigationEnabled(
  callback: function,
)
: void

Indique si la navigation spatiale est activée pour la WebView.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (enabled: boolean) => void

    • activé

      booléen

isUserAgentOverridden()

chrome.webviewTag.isUserAgentOverridden(): void

Indique si la chaîne d'agent utilisateur de webview a été remplacée par webviewTag.setUserAgentOverride.

loadDataWithBaseUrl()

chrome.webviewTag.loadDataWithBaseUrl(
  dataUrl: string,
  baseUrl: string,
  virtualUrl?: string,
)
: void

Charge une URL de données avec une URL de base spécifiée utilisée pour les liens relatifs. Vous pouvez également fournir une URL virtuelle à afficher à l'utilisateur au lieu de l'URL des données.

Paramètres

  • dataUrl

    chaîne

    URL des données à charger.

  • baseUrl

    chaîne

    URL de base qui sera utilisée pour les liens relatifs.

  • virtualUrl

    chaîne facultative

    URL qui sera affichée à l'utilisateur (dans la barre d'adresse).

print()

chrome.webviewTag.print(): void

Affiche le contenu de webview. Cela équivaut à appeler la fonction d'impression scriptée à partir de webview.

reload()

chrome.webviewTag.reload(): void

Actualise la page de premier niveau actuelle.

removeContentScripts()

Chrome 44 et versions ultérieures
chrome.webviewTag.removeContentScripts(
  scriptNameList?: string[],
)
: void

Supprime les scripts de contenu d'un webview.

L'exemple suivant supprime "myRule" qui a été ajouté précédemment.

webview.removeContentScripts(['myRule']);

Vous pouvez supprimer toutes les règles en appelant :

webview.removeContentScripts();

Paramètres

  • scriptNameList

    string[] facultatif

    Liste des noms des scripts de contenu qui seront supprimés. Si la liste est vide, tous les scripts de contenu ajoutés à webview seront supprimés.

setAudioMuted()

Chrome 62 et versions ultérieures
chrome.webviewTag.setAudioMuted(
  mute: boolean,
)
: void

Définit l'état de désactivation du son de la WebView.

Paramètres

  • couper le son

    booléen

    Valeur de désactivation du son

setSpatialNavigationEnabled()

Chrome 71 et versions ultérieures
chrome.webviewTag.setSpatialNavigationEnabled(
  enabled: boolean,
)
: void

Définit l'état de la navigation spatiale de la WebView.

Paramètres

  • activé

    booléen

    Valeur de l'état de la navigation spatiale.

setUserAgentOverride()

chrome.webviewTag.setUserAgentOverride(
  userAgent: string,
)
: void

Remplace la chaîne user-agent utilisée par webview pour les demandes de pages invitées. La substitution entraînera la suppression des valeurs d'en-tête User-Agent Client Hint et des valeurs renvoyées par navigator.userAgentData pour les requêtes de pages invitées auxquelles cette substitution est appliquée.

Paramètres

  • userAgent

    chaîne

    Chaîne user-agent à utiliser.

setZoom()

chrome.webviewTag.setZoom(
  zoomFactor: number,
  callback?: function,
)
: void

Modifie le facteur de zoom de la page. La portée et la persistance de cette modification sont déterminées par le mode de zoom actuel de la vue Web (voir webviewTag.ZoomMode).

Paramètres

  • zoomFactor

    Total

    Nouveau facteur de zoom.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

setZoomMode()

Chrome 43 et versions ultérieures
chrome.webviewTag.setZoomMode(
  ZoomMode: ZoomMode,
  callback?: function,
)
: void

Définit le mode de zoom de webview.

Paramètres

  • ZoomMode

    Définit la façon dont le zoom est géré dans webview.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

stop()

chrome.webviewTag.stop(): void

Arrête le chargement de la navigation webview actuelle, le cas échéant.

stopFinding()

chrome.webviewTag.stopFinding(
  action?: StopFindingAction,
)
: void

Met fin à la session de recherche en cours (en effaçant toutes les mises en surbrillance) et annule toutes les demandes de recherche en cours.

Paramètres

  • action

    StopFindingAction facultatif

    Détermine ce qu'il faut faire avec la partie en cours une fois la session de recherche terminée. clear : efface la mise en surbrillance de la correspondance active. keep : conserve la mise en surbrillance de la correspondance active. activate : conserve la mise en surbrillance de la correspondance active et simule un clic de l'utilisateur sur cette correspondance. L'action par défaut est keep.

terminate()

chrome.webviewTag.terminate(): void

Interrompt de force le processus de rendu de la page Web invitée. Cela peut affecter plusieurs balises webview dans l'application actuelle si elles partagent le même processus, mais cela n'affectera pas les balises webview dans d'autres applications.

Événements

close

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

Événement déclenché lorsque la fenêtre invitée tente de se fermer.

L'exemple de code suivant permet au webview de naviguer vers about:blank lorsque le guest tente de se fermer.

webview.addEventListener('close', function() {
  webview.src = 'about:blank';
});

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    () => void

consolemessage

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

Déclenché lorsque la fenêtre invitée enregistre un message de console.

L'exemple de code suivant transfère tous les messages du journal vers la console de l'intégrateur, sans tenir compte du niveau de journalisation ni des autres propriétés.

webview.addEventListener('consolemessage', function(e) {
  console.log('Guest page logged a message: ', e.message);
});

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (level: number, message: string, line: number, sourceId: string) => void

    • level

      Total

    • message

      chaîne

    • ligne

      Total

    • sourceId

      chaîne

contentload

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

Déclenché lorsque la fenêtre invitée déclenche un événement load, c'est-à-dire lorsqu'un nouveau document est chargé. Cela n'inclut pas la navigation sur les pages du document actuel ni les chargements de ressources asynchrones.

L'exemple de code suivant modifie la taille de police par défaut de l'élément body de l'invité après le chargement de la page :

webview.addEventListener('contentload', function() {
  webview.executeScript({ code: 'document.body.style.fontSize = "42px"' });
});

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    () => void

dialog

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

Déclenché lorsque la fenêtre invitée tente d'ouvrir une boîte de dialogue modale via window.alert, window.confirm ou window.prompt.

La gestion de cet événement bloquera le processus invité jusqu'à ce que chaque écouteur d'événement renvoie ou que l'objet dialog devienne inaccessible (si preventDefault() a été appelé).

Le comportement par défaut consiste à annuler la boîte de dialogue.

Paramètres

exit

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

Déclenché lorsque le processus d'affichage du contenu Web invité s'est terminé.

L'exemple de code suivant affichera un message d'adieu chaque fois que la page invitée plante :

webview.addEventListener('exit', function(e) {
  if (e.reason === 'crash') {
    webview.src = 'data:text/plain,Goodbye, world!';
  }
});

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (details: object) => void

    • détails

      objet

      • processID

        Total

        ID Chrome interne du processus qui s'est arrêté.

      • reason

        Chaîne indiquant le motif de la sortie.

findupdate

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

Déclenché lorsque de nouveaux résultats de recherche sont disponibles pour une demande de recherche active. Cela peut se produire plusieurs fois pour une même demande de recherche, à mesure que des correspondances sont trouvées.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (searchText: string, numberOfMatches: number, activeMatchOrdinal: number, selectionRect: SelectionRect, canceled: boolean, finalUpdate: string) => void

    • searchText

      chaîne

    • numberOfMatches

      Total

    • activeMatchOrdinal

      Total

    • selectionRect
    • annulée

      booléen

    • finalUpdate

      chaîne

loadabort

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

Déclenché lorsqu'un chargement de premier niveau a été abandonné sans être validé. Un message d'erreur s'affiche dans la console, sauf si l'événement est empêché par défaut.

Remarque : Lorsqu'un chargement de ressource est abandonné, un événement loadabort est généralement suivi d'un événement loadstop, même si tous les chargements validés depuis le dernier événement loadstop (le cas échéant) ont été abandonnés.

Remarque : Lorsque le chargement d'une URL "about" ou d'une URL JavaScript est abandonné, loadabort est déclenché, puis webview est redirigé vers "about:blank".

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

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

loadcommit

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

Déclenché lorsqu'un chargement est validé. Cela inclut la navigation dans le document actuel ainsi que les chargements au niveau du document de sous-frame, mais n'inclut pas les chargements de ressources asynchrones.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (url: string, isTopLevel: boolean) => void

    • url

      chaîne

    • isTopLevel

      booléen

loadredirect

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

Événement déclenché lorsqu'une requête de chargement de premier niveau a été redirigée vers une autre URL.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (oldUrl: string, newUrl: string, isTopLevel: boolean) => void

    • oldUrl

      chaîne

    • newUrl

      chaîne

    • isTopLevel

      booléen

loadstart

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

Déclenché lorsqu'un chargement a commencé.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (url: string, isTopLevel: boolean) => void

    • url

      chaîne

    • isTopLevel

      booléen

loadstop

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

Déclenché lorsque tous les chargements au niveau du frame d'une page invitée (y compris tous ses sous-frames) sont terminés. Cela inclut la navigation dans le document actuel ainsi que les chargements au niveau du document de sous-frame, mais n'inclut pas les chargements de ressources asynchrones. Cet événement se déclenche chaque fois que le nombre de chargements au niveau du document passe d'un (ou plusieurs) à zéro. Par exemple, si une page qui a déjà fini de se charger (c'est-à-dire loadstop déjà déclenché une fois) crée un iFrame qui charge une page, puis un deuxième loadstop se déclenche lorsque le chargement de la page iFrame est terminé. Ce schéma est souvent observé sur les pages qui chargent des annonces.

Remarque : Lorsqu'un chargement validé est abandonné, un événement loadstop suit généralement un événement loadabort, même si tous les chargements validés depuis le dernier événement loadstop (le cas échéant) ont été abandonnés.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    () => void

newwindow

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

Déclenché lorsque la page invitée tente d'ouvrir une nouvelle fenêtre de navigateur.

L'exemple de code suivant crée et ouvre une nouvelle webview dans l'intégrateur pour chaque nouvelle fenêtre demandée :

webview.addEventListener('newwindow', function(e) {
  var newWebview = document.createElement('webview');
  document.body.appendChild(newWebview);
  e.window.attach(newWebview);
});

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (window: NewWindow, targetUrl: string, initialWidth: number, initialHeight: number, name: string, windowOpenDisposition: WindowOpenDisposition) => void

permissionrequest

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

Événement déclenché lorsque la page invitée doit demander une autorisation spéciale à l'intégrateur.

L'exemple de code suivant accorde à la page invitée l'accès à l'API webkitGetUserMedia. Notez qu'une application utilisant cet exemple de code doit elle-même spécifier les autorisations de fichier manifeste audioCapture et/ou videoCapture :

webview.addEventListener('permissionrequest', function(e) {
  if (e.permission === 'media') {
    e.request.allow();
  }
});

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (permission: PermissionType, request: object) => void

responsive

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

Événement déclenché lorsque le processus de rendu du contenu Web invité redevient réactif après avoir cessé de l'être.

L'exemple de code suivant estompe l'élément webview lorsqu'il devient réactif ou non :

webview.style.webkitTransition = 'opacity 250ms';
webview.addEventListener('unresponsive', function() {
  webview.style.opacity = '0.5';
});
webview.addEventListener('responsive', function() {
  webview.style.opacity = '1';
});

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (processID: number) => void

    • processID

      Total

sizechanged

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

Déclenché lorsque le contenu Web intégré a été redimensionné via autosize. Ne se déclenche que si autosize est activé.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (oldWidth: number, oldHeight: number, newWidth: number, newHeight: number) => void

    • oldWidth

      Total

    • oldHeight

      Total

    • newWidth

      Total

    • newHeight

      Total

unresponsive

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

Déclenché lorsque le processus de rendu du contenu Web invité ne répond plus. Cet événement sera généré une seule fois avec un événement de réponse correspondant si l'invité recommence à répondre.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (processID: number) => void

    • processID

      Total

zoomchange

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

Déclenché lorsque le zoom de la page change.

Paramètres

  • callback

    fonction

    Le paramètre callback se présente comme suit :

    (oldZoomFactor: number, newZoomFactor: number) => void

    • oldZoomFactor

      Total

    • newZoomFactor

      Total