Description
Utilisez l'API chrome.tabs pour interagir avec le système d'onglets du navigateur. Vous pouvez utiliser cette API pour créer, modifier et réorganiser les onglets du navigateur.
L'API Tabs propose des fonctionnalités permettant de manipuler et de gérer les onglets, mais elle peut également détecter la langue de l'onglet, prendre une capture d'écran et communiquer avec les scripts de contenu d'un onglet.
Autorisations
La plupart des fonctionnalités ne nécessitent aucune autorisation. Par exemple, créer un onglet, actualiser un onglet, accéder à une autre URL, etc.
Les développeurs doivent connaître trois autorisations lorsqu'ils utilisent l'API Tabs.
- Autorisation "tabs"
- Cette autorisation ne donne pas accès à l'espace de noms - chrome.tabs. Au lieu de cela, il permet à une extension d'appeler- tabs.query()sur quatre propriétés sensibles des instances- tabs.Tab:- url,- pendingUrl,- titleet- favIconUrl.- { "name": "My extension", ... "permissions": [ "tabs" ], ... }
- Autorisations de l'organisateur
- Les autorisations d'hôte permettent à une extension de lire et d'interroger les quatre propriétés sensibles - tabs.Tabd'un onglet correspondant. Ils peuvent également interagir directement avec les onglets correspondants à l'aide de méthodes telles que- tabs.captureVisibleTab(),- scripting.executeScript(),- scripting.insertCSS()et- scripting.removeCSS().- { "name": "My extension", ... "host_permissions": [ "http://*/*", "https://*/*" ], ... }
- Autorisation "activeTab"
- activeTabaccorde à une extension une autorisation d'hôte temporaire pour l'onglet actuel en réponse à une invocation de l'utilisateur. Contrairement aux autorisations d'hôte,- activeTabne déclenche aucun avertissement.- { "name": "My extension", ... "permissions": [ "activeTab" ], ... }
Cas d'utilisation
Les sections suivantes présentent quelques cas d'utilisation courants.
Ouvrir la page d'une extension dans un nouvel onglet
Un schéma courant pour les extensions consiste à ouvrir une page d'intégration dans un nouvel onglet lorsque l'extension est installée. L'exemple suivant montre comment procéder.
background.js:
chrome.runtime.onInstalled.addListener(({reason}) => {
  if (reason === 'install') {
    chrome.tabs.create({
      url: "onboarding.html"
    });
  }
});
Obtenir l'onglet actuel
Cet exemple montre comment le service worker d'une extension peut récupérer l'onglet actif à partir de la fenêtre actuellement sélectionnée (ou de la fenêtre sélectionnée le plus récemment, si aucune fenêtre Chrome n'est sélectionnée). Il s'agit généralement de l'onglet actuel de l'utilisateur.
  async function getCurrentTab() {
    let queryOptions = { active: true, lastFocusedWindow: true };
    // `tab` will either be a `tabs.Tab` instance or `undefined`.
    let [tab] = await chrome.tabs.query(queryOptions);
    return tab;
  }
  
  function getCurrentTab(callback) {
    let queryOptions = { active: true, lastFocusedWindow: true };
    chrome.tabs.query(queryOptions, ([tab]) => {
      if (chrome.runtime.lastError)
      console.error(chrome.runtime.lastError);
      // `tab` will either be a `tabs.Tab` instance or `undefined`.
      callback(tab);
    });
  }
Couper le son de l'onglet spécifié
Cet exemple montre comment une extension peut activer ou désactiver le son d'un onglet donné.
  async function toggleMuteState(tabId) {
    const tab = await chrome.tabs.get(tabId);
    const muted = !tab.mutedInfo.muted;
    await chrome.tabs.update(tabId, {muted});
    console.log(`Tab ${tab.id} is ${muted ? "muted" : "unmuted"}`);
  }
  
  function toggleMuteState(tabId) {
    chrome.tabs.get(tabId, async (tab) => {
      let muted = !tab.mutedInfo.muted;
      await chrome.tabs.update(tabId, { muted });
      console.log(`Tab ${tab.id} is ${ muted ? "muted" : "unmuted" }`);
    });
  }
Déplacer l'onglet actuel à la première position lorsque l'utilisateur clique dessus
Cet exemple montre comment déplacer un onglet, qu'un déplacement soit en cours ou non. Bien que cet exemple utilise chrome.tabs.move, vous pouvez utiliser le même modèle d'attente pour d'autres appels qui modifient les onglets pendant qu'un déplacement est en cours.
  chrome.tabs.onActivated.addListener(moveToFirstPosition);
  async function moveToFirstPosition(activeInfo) {
    try {
      await chrome.tabs.move(activeInfo.tabId, {index: 0});
      console.log("Success.");
    } catch (error) {
      if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
        setTimeout(() => moveToFirstPosition(activeInfo), 50);
      } else {
        console.error(error);
      }
    }
  }
  
  chrome.tabs.onActivated.addListener(moveToFirstPositionMV2);
  function moveToFirstPositionMV2(activeInfo) {
    chrome.tabs.move(activeInfo.tabId, { index: 0 }, () => {
      if (chrome.runtime.lastError) {
        const error = chrome.runtime.lastError;
        if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
          setTimeout(() => moveToFirstPositionMV2(activeInfo), 50);
        } else {
          console.error(error);
        }
      } else {
        console.log("Success.");
      }
    });
  }
Transmettre un message au script de contenu d'un onglet sélectionné
Cet exemple montre comment le service worker d'une extension peut communiquer avec des scripts de contenu dans des onglets de navigateur spécifiques à l'aide de tabs.sendMessage().
function sendMessageToActiveTab(message) {
  const [tab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true });
  const response = await chrome.tabs.sendMessage(tab.id, message);
  // TODO: Do something with the response.
}
Exemples d'extensions
Pour découvrir d'autres démonstrations d'extensions de l'API Tabs, explorez les éléments suivants :
Types
MutedInfo
État de la mise en sourdine de l'onglet et raison du dernier changement d'état.
Propriétés
- 
    extensionIdchaîne facultative ID de l'extension qui a modifié l'état de la vidéo (désactivé ou non). Non défini si une extension n'est pas la raison pour laquelle l'état de mise en sourdine a été modifié pour la dernière fois. 
- 
    son coupébooléen Indique si l'onglet est mis en sourdine (empêché de lire du son). L'onglet peut être mis en sourdine même s'il n'a pas diffusé de son ou n'en diffuse pas actuellement. Équivaut à l'affichage ou non de l'indicateur audio "désactivé". 
- 
    reasonMutedInfoReason facultatif Raison pour laquelle l'onglet a été mis en sourdine ou réactivé. Non défini si l'état de désactivation du son de l'onglet n'a jamais été modifié. 
MutedInfoReason
Événement ayant entraîné un changement d'état de mise en sourdine.
Énumération
"user" 
 Une action d'entrée utilisateur a défini l'état de mise en sourdine.
"capture" 
 La capture d'onglet a commencé, ce qui a forcé le changement d'état de la mise en sourdine.
"extension" 
 Une extension, identifiée par le champ extensionId, a défini l'état de mise en sourdine.
Tab
Propriétés
- 
    actifbooléen Indique si l'onglet est actif dans sa fenêtre. Cela ne signifie pas nécessairement que la fenêtre est sélectionnée. 
- 
    audiblebooléen facultatif Chrome 45 et versions ultérieuresIndique si l'onglet a émis du son au cours des dernières secondes (mais il est possible qu'il ne soit pas audible s'il est également mis en sourdine). Équivaut à l'affichage ou non de l'indicateur "Son de l'enceinte". 
- 
    autoDiscardablebooléen Chrome 54 et versions ultérieuresIndique si l'onglet peut être supprimé automatiquement par le navigateur lorsque les ressources sont faibles. 
- 
    avez supprimébooléen Chrome 54 et versions ultérieuresIndique si l'onglet est supprimé. Un onglet mis de côté est un onglet dont le contenu a été déchargé de la mémoire, mais qui reste visible dans la barre d'onglets. Son contenu est rechargé la prochaine fois qu'il est activé. 
- 
    favIconUrlchaîne facultative URL du favicon de l'onglet. Cette propriété n'est présente que si l'extension dispose de l'autorisation "tabs"ou d'autorisations d'hôte pour la page. Il peut également s'agir d'une chaîne vide si l'onglet est en cours de chargement.
- 
    figébooléen Chrome 132 et versions ultérieuresIndique si l'onglet est figé. Un onglet figé ne peut pas exécuter de tâches, y compris des gestionnaires d'événements ou des minuteurs. Il est visible dans la barre d'onglets et son contenu est chargé en mémoire. Il est dégelé lors de l'activation. 
- 
    groupIdTotal Chrome 88 et versions ultérieuresID du groupe auquel appartient l'onglet. 
- 
    hauteurnumber facultatif Hauteur de l'onglet en pixels. 
- 
    en surbrillancebooléen Indique si l'onglet est mis en surbrillance. 
- 
    idnumber facultatif ID de l'onglet. Les ID d'onglet sont uniques dans une session de navigateur. Dans certains cas, un onglet peut ne pas se voir attribuer d'ID. Par exemple, lors de l'interrogation d'onglets étrangers à l'aide de l'API sessions, un ID de session peut être présent. L'ID d'onglet peut également être défini surchrome.tabs.TAB_ID_NONEpour les applications et les fenêtres d'outils de développement.
- 
    navigation privéebooléen Indique si l'onglet se trouve dans une fenêtre de navigation privée. 
- 
    indexTotal Index basé sur zéro de l'onglet dans sa fenêtre. 
- 
    lastAccessedTotal Chrome 121 et versions ultérieuresDernière fois que l'onglet est devenu actif dans sa fenêtre, en nombre de millisecondes depuis l'epoch. 
- 
    mutedInfoMutedInfo facultatif Chrome 46 et versions ultérieuresÉtat de la mise en sourdine de l'onglet et raison du dernier changement d'état. 
- 
    openerTabIdnumber facultatif ID de l'onglet qui a ouvert cet onglet, le cas échéant. Cette propriété n'est présente que si l'onglet d'origine existe toujours. 
- 
    pendingUrlchaîne facultative Chrome 79 et versions ultérieuresURL vers laquelle l'onglet est en cours de navigation, avant son engagement. Cette propriété n'est présente que si l'extension dispose de l'autorisation "tabs"ou d'autorisations d'hôte pour la page et qu'une navigation est en attente.
- 
    épinglébooléen Indique si l'onglet est épinglé. 
- 
    sélectionnébooléen ObsolèteVeuillez utiliser tabs.Tab.highlighted.Indique si l'onglet est sélectionné. 
- 
    sessionIdchaîne facultative ID de session utilisé pour identifier de manière unique un onglet obtenu à partir de l'API sessions.
- 
    étatTabStatus facultatif État de chargement de l'onglet. 
- 
    titrechaîne facultative Titre de l'onglet. Cette propriété n'est présente que si l'extension dispose de l'autorisation "tabs"ou d'autorisations d'hôte pour la page.
- 
    urlchaîne facultative Dernière URL validée du frame principal de l'onglet. Cette propriété n'est présente que si l'extension dispose de l'autorisation "tabs"ou d'autorisations d'hôte pour la page. Peut être une chaîne vide si l'onglet n'a pas encore été validé. Voir aussiTab.pendingUrl.
- 
    largeurnumber facultatif Largeur de l'onglet en pixels. 
- 
    windowIdTotal ID de la fenêtre contenant l'onglet. 
TabStatus
État de chargement de l'onglet.
Énumération
"unloaded" 
 
"loading" 
 
"complete" 
 
WindowType
Type de fenêtre.
Énumération
"normal" 
 
"popup" 
 
"panel" 
 
"app" 
 
"devtools" 
 
ZoomSettings
Définit la façon dont les modifications du zoom dans un onglet sont gérées et à quelle portée.
Propriétés
- 
    defaultZoomFactornumber facultatif Chrome 43 et versions ultérieuresUtilisé pour renvoyer le niveau de zoom par défaut de l'onglet actuel dans les appels à tabs.getZoomSettings. 
- 
    modeZoomSettingsMode facultatif Définit la façon dont les changements de zoom sont gérés, c'est-à-dire l'entité responsable de la mise à l'échelle réelle de la page. La valeur par défaut est automatic.
- 
    champ d'applicationZoomSettingsScope facultatif Définit si les modifications du zoom sont conservées pour l'origine de la page ou ne prennent effet que dans cet onglet. La valeur par défaut est per-originen modeautomaticetper-tabdans les autres cas.
ZoomSettingsMode
Définit la façon dont les changements de zoom sont gérés, c'est-à-dire l'entité responsable de la mise à l'échelle réelle de la page. La valeur par défaut est automatic.
Énumération
"automatic" 
 Les modifications du zoom sont gérées automatiquement par le navigateur.
"manual" 
 Remplace la gestion automatique des modifications du zoom. L'événement onZoomChange sera toujours distribué. Il incombe à l'extension d'écouter cet événement et de mettre à l'échelle la page manuellement. Ce mode n'est pas compatible avec le zoom per-origin. Il ignore donc le paramètre de zoom scope et suppose que la valeur est per-tab.
disabled 
 Désactive tout zoom dans l'onglet. L'onglet revient au niveau de zoom par défaut et toutes les tentatives de modification du zoom sont ignorées.
ZoomSettingsScope
Définit si les modifications du zoom sont conservées pour l'origine de la page ou ne prennent effet que dans cet onglet. La valeur par défaut est per-origin en mode automatic et per-tab dans les autres cas.
Énumération
Par origine 
 Les modifications du zoom sont conservées dans l'origine de la page zoomée. Autrement dit, tous les autres onglets accédant à cette même origine sont également zoomés. 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. Le champ d'application per-origin n'est disponible qu'en mode automatic.
"Par onglet" 
 Les modifications du zoom ne prennent effet que dans cet onglet. Celles apportées dans d'autres onglets n'ont aucune incidence sur le zoom de cet onglet. De plus, les modifications du per-tab sont réinitialisées lors de la navigation. L'ouverture d'un onglet charge toujours les pages avec leurs facteurs de per-origin.
Propriétés
MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND
Nombre maximal de fois où captureVisibleTab peut être appelé par seconde. captureVisibleTab est coûteux et ne doit pas être appelé trop souvent.
Valeur
2 
 
TAB_ID_NONE
ID représentant l'absence d'onglet de navigateur.
Valeur
-1 
 
TAB_INDEX_NONE
Index représentant l'absence d'index de tabulation dans un tab_strip.
Valeur
-1 
 
Méthodes
captureVisibleTab()
chrome.tabs.captureVisibleTab(
windowId?: number,
options?: ImageDetails,
): Promise<string>
Capture la zone visible de l'onglet actuellement actif dans la fenêtre spécifiée. Pour appeler cette méthode, l'extension doit disposer de l'autorisation <all_urls> ou activeTab. En plus des sites auxquels les extensions peuvent normalement accéder, cette méthode permet aux extensions de capturer des sites sensibles qui sont autrement restreints, y compris les pages du schéma chrome:, les pages d'autres extensions et les URL data:. Ces sites sensibles ne peuvent être capturés qu'avec l'autorisation activeTab. Les URL de fichiers ne peuvent être capturées que si l'extension a obtenu l'accès aux fichiers.
Paramètres
- 
    windowIdnumber facultatif La fenêtre cible. La valeur par défaut est période actuelle. 
- 
    optionsImageDetails facultatif 
Renvoie
- 
            Promise<string> Chrome 88 et versions ultérieures
connect()
chrome.tabs.connect(
tabId: number,
connectInfo?: object,
): runtime.Port
Se connecte aux scripts de contenu dans l'onglet spécifié. L'événement runtime.onConnect est déclenché dans chaque script de contenu exécuté dans l'onglet spécifié pour l'extension actuelle. Pour en savoir plus, consultez Messagerie des scripts de contenu.
Paramètres
- 
    tabIdTotal 
- 
    connectInfoobject facultatif - 
    documentIdchaîne facultative Chrome 106 et versions ultérieuresOuvrez un port vers un document spécifique identifié par documentIdau lieu de toutes les frames de l'onglet.
- 
    frameIdnumber facultatif Ouvrez un port vers un frame spécifique identifié par frameIdau lieu de tous les frames de l'onglet.
- 
    nomchaîne facultative Est transmis à onConnect pour les scripts de contenu qui écoutent l'événement de connexion. 
 
- 
    
Renvoie
- 
            Port pouvant être utilisé pour communiquer avec les scripts de contenu s'exécutant dans l'onglet spécifié. L'événement runtime.Portdu port est déclenché si l'onglet se ferme ou n'existe pas.
Paramètres
- 
    createPropertiesobjet - 
    actifbooléen facultatif Indique si l'onglet doit devenir l'onglet actif de la fenêtre. N'a pas d'incidence sur la sélection de la fenêtre (voir windows.update). La valeur par défaut esttrue.
- 
    indexnumber facultatif Position de l'onglet dans la fenêtre. La valeur fournie est limitée entre zéro et le nombre d'onglets de la fenêtre. 
- 
    openerTabIdnumber facultatif ID de l'onglet qui a ouvert cet onglet. Si elle est spécifiée, l'onglet d'ouverture doit se trouver dans la même fenêtre que l'onglet nouvellement créé. 
- 
    épinglébooléen facultatif Indique si l'onglet doit être épinglé. La valeur par défaut est false.
- 
    sélectionnébooléen facultatif ObsolèteVeuillez utiliser active. Indique si l'onglet doit devenir l'onglet sélectionné dans la fenêtre. La valeur par défaut est true.
- 
    urlchaîne facultative URL vers laquelle l'onglet doit être redirigé initialement. Les URL complètes doivent inclure un schéma (par exemple, "http://www.google.com", et non "www.google.com"). Les URL relatives sont relatives à la page actuelle de l'extension. Par défaut, il s'agit de la page "Nouvel onglet". 
- 
    windowIdnumber facultatif Fenêtre dans laquelle créer le nouvel onglet. La valeur par défaut est période actuelle. 
 
- 
    
Renvoie
- 
            Promise<Tab> Chrome 88 et versions ultérieures
detectLanguage()
chrome.tabs.detectLanguage(
tabId?: number,
): Promise<string>
Détecte la langue principale du contenu d'un onglet.
Paramètres
- 
    tabIdnumber facultatif Par défaut, l'onglet actif de la fenêtre actuelle. 
Renvoie
- 
            Promise<string> Chrome 88 et versions ultérieures
discard()
chrome.tabs.discard(
tabId?: number,
): Promise<Tab | undefined>
Supprime un onglet de la mémoire. Les onglets supprimés restent visibles dans la barre d'onglets et sont rechargés lorsqu'ils sont activés.
Paramètres
- 
    tabIdnumber facultatif ID de l'onglet à supprimer. Si elle est spécifiée, l'onglet est supprimé, sauf s'il est actif ou déjà supprimé. Si cet élément n'est pas spécifié, le navigateur ferme l'onglet le moins important. Cette opération peut échouer si aucun onglet n'est supprimable. 
Renvoie
- 
            Promise<Tab | undefined> Chrome 88 et versions ultérieures
Paramètres
- 
    tabIdTotal ID de l'onglet à dupliquer. 
Renvoie
- 
            Promise<Tab | undefined> Chrome 88 et versions ultérieures
Paramètres
- 
    tabIdTotal 
Renvoie
- 
            Promise<Tab> Chrome 88 et versions ultérieures
getCurrent()
chrome.tabs.getCurrent(): Promise<Tab | undefined>
Récupère l'onglet à partir duquel cet appel de script est effectué. Renvoie undefined si l'appel est effectué à partir d'un contexte autre qu'un onglet (par exemple, une page d'arrière-plan ou une vue pop-up).
Renvoie
- 
            Promise<Tab | undefined> Chrome 88 et versions ultérieures
getZoom()
chrome.tabs.getZoom(
tabId?: number,
): Promise<number>
Récupère le facteur de zoom actuel d'un onglet spécifié.
Paramètres
- 
    tabIdnumber facultatif ID de l'onglet à partir duquel obtenir le facteur de zoom actuel. La valeur par défaut est l'onglet actif de la fenêtre actuelle. 
Renvoie
- 
            Promise<number> Chrome 88 et versions ultérieures
getZoomSettings()
chrome.tabs.getZoomSettings(
tabId?: number,
): Promise<ZoomSettings>
Obtient les paramètres de zoom actuels d'un onglet spécifié.
Paramètres
- 
    tabIdnumber facultatif ID de l'onglet à partir duquel obtenir les paramètres de zoom actuels. Par défaut, il s'agit de l'onglet actif de la fenêtre actuelle. 
Renvoie
- 
            Promise<ZoomSettings> Chrome 88 et versions ultérieures
goBack()
chrome.tabs.goBack(
tabId?: number,
): Promise<void>
Revenez à la page précédente, si elle existe.
Paramètres
- 
    tabIdnumber facultatif ID de l'onglet vers lequel revenir. Par défaut, il s'agit de l'onglet sélectionné de la fenêtre actuelle. 
Renvoie
- 
            Promise<void> Chrome 88 et versions ultérieures
goForward()
chrome.tabs.goForward(
tabId?: number,
): Promise<void>
Accéder à la page suivante, si elle est disponible.
Paramètres
- 
    tabIdnumber facultatif ID de l'onglet vers lequel naviguer. Par défaut, il s'agit de l'onglet sélectionné de la fenêtre actuelle. 
Renvoie
- 
            Promise<void> Chrome 88 et versions ultérieures
group()
chrome.tabs.group(
options: object,
): Promise<number>
Ajoute un ou plusieurs onglets à un groupe spécifié ou, si aucun groupe n'est spécifié, ajoute les onglets donnés à un groupe nouvellement créé.
Paramètres
- 
    optionsobjet - 
    createPropertiesobject facultatif Configurations permettant de créer un groupe. Ne peut pas être utilisé si groupId est déjà spécifié. - 
    windowIdnumber facultatif Fenêtre du nouveau groupe. La valeur par défaut est la fenêtre actuelle. 
 
- 
    
- 
    groupIdnumber facultatif ID du groupe auquel ajouter les onglets. Si aucun n'est spécifié, un groupe sera créé. 
- 
    tabIdsnumber | [number, ...number[]] ID de l'onglet ou liste des ID d'onglet à ajouter au groupe spécifié. 
 
- 
    
Renvoie
- 
            Promise<number> 
highlight()
chrome.tabs.highlight(
highlightInfo: object,
): Promise<windows.Window>
Met en surbrillance les onglets indiqués et se concentre sur le premier du groupe. Ne fera rien si l'onglet spécifié est actuellement actif.
Paramètres
- 
    highlightInfoobjet - 
    ongletsnumber | number[] Un ou plusieurs index d'onglets à mettre en évidence. 
- 
    windowIdnumber facultatif Fenêtre contenant les onglets. 
 
- 
    
Renvoie
- 
            Promise<windows.Window> Chrome 88 et versions ultérieures
move()
chrome.tabs.move(
tabIds: number | number[],
moveProperties: object,
): Promise<Tab | Tab[]>
Déplace un ou plusieurs onglets vers une nouvelle position dans leur fenêtre ou vers une nouvelle fenêtre. Notez que les onglets ne peuvent être déplacés que vers et depuis des fenêtres normales (window.type === "normal").
Paramètres
- 
    tabIdsnumber | number[] ID ou liste d'ID des onglets à déplacer. 
- 
    movePropertiesobjet - 
    indexTotal Position vers laquelle déplacer la fenêtre. Utilisez -1pour placer l'onglet à la fin de la fenêtre.
- 
    windowIdnumber facultatif Par défaut, la fenêtre dans laquelle se trouve actuellement l'onglet. 
 
- 
    
query()
chrome.tabs.query(
queryInfo: object,
): Promise<Tab[]>
Récupère tous les onglets qui possèdent les propriétés spécifiées, ou tous les onglets si aucune propriété n'est spécifiée.
Paramètres
- 
    queryInfoobjet - 
    actifbooléen facultatif Indique si les onglets sont actifs dans leurs fenêtres. 
- 
    audiblebooléen facultatif Chrome 45 et versions ultérieuresIndique si les onglets sont audibles. 
- 
    autoDiscardablebooléen facultatif Chrome 54 et versions ultérieuresIndique si les onglets peuvent être supprimés automatiquement par le navigateur lorsque les ressources sont faibles. 
- 
    currentWindowbooléen facultatif Indique si les onglets se trouvent dans la fenêtre actuelle. 
- 
    avez supprimébooléen facultatif Chrome 54 et versions ultérieuresIndique si les onglets sont supprimés. Un onglet mis de côté est un onglet dont le contenu a été déchargé de la mémoire, mais qui reste visible dans la barre d'onglets. Son contenu est rechargé la prochaine fois qu'il est activé. 
- 
    figébooléen facultatif Chrome 132 et versions ultérieuresIndique si les onglets sont figés. Un onglet figé ne peut pas exécuter de tâches, y compris des gestionnaires d'événements ou des minuteurs. Il est visible dans la barre d'onglets et son contenu est chargé en mémoire. Il est dégelé lors de l'activation. 
- 
    groupIdnumber facultatif Chrome 88 et versions ultérieuresID du groupe auquel appartiennent les onglets ou tabGroups.TAB_GROUP_ID_NONEpour les onglets non regroupés.
- 
    en surbrillancebooléen facultatif Indique si les onglets sont mis en surbrillance. 
- 
    indexnumber facultatif Position des onglets dans leurs fenêtres. 
- 
    lastFocusedWindowbooléen facultatif Indique si les onglets se trouvent dans la dernière fenêtre sélectionnée. 
- 
    son coupébooléen facultatif Chrome 45 et versions ultérieuresIndique si les onglets sont mis en sourdine. 
- 
    épinglébooléen facultatif Indique si les onglets sont épinglés. 
- 
    splitViewIdnumber facultatif Chrome 140 et versions ultérieuresID de la vue fractionnée dans laquelle se trouvent les onglets, ou tabs.SPLIT_VIEW_ID_NONEpour les onglets qui ne se trouvent pas dans une vue fractionnée.
- 
    étatTabStatus facultatif État de chargement de l'onglet. 
- 
    titrechaîne facultative Faites correspondre les titres de pages à un modèle. Cette propriété est ignorée si l'extension ne dispose pas de l'autorisation "tabs"ni des autorisations d'hôte pour la page.
- 
    urlstring | string[] facultatif Faites correspondre les onglets à un ou plusieurs formats d'URL. Les identifiants de fragment ne sont pas mis en correspondance. Cette propriété est ignorée si l'extension ne dispose pas de l'autorisation "tabs"ni des autorisations d'hôte pour la page.
- 
    windowIdnumber facultatif ID de la fenêtre parente ou windows.WINDOW_ID_CURRENTpour la fenêtre actuelle.
- 
    windowTypeWindowType facultatif Type de fenêtre dans laquelle se trouvent les onglets. 
 
- 
    
Renvoie
- 
            Promise<Tab[]> Chrome 88 et versions ultérieures
reload()
chrome.tabs.reload(
tabId?: number,
reloadProperties?: object,
): Promise<void>
Actualisez un onglet.
Paramètres
- 
    tabIdnumber facultatif ID de l'onglet à recharger. Par défaut, il s'agit de l'onglet sélectionné de la fenêtre actuelle. 
- 
    reloadPropertiesobject facultatif - 
    bypassCachebooléen facultatif Indique s'il faut contourner la mise en cache locale. La valeur par défaut est false.
 
- 
    
Renvoie
- 
            Promise<void> Chrome 88 et versions ultérieures
remove()
chrome.tabs.remove(
tabIds: number | number[],
): Promise<void>
Ferme un ou plusieurs onglets.
Paramètres
- 
    tabIdsnumber | number[] ID ou liste d'ID des onglets à fermer. 
Renvoie
- 
            Promise<void> Chrome 88 et versions ultérieures
sendMessage()
chrome.tabs.sendMessage(
tabId: number,
message: any,
options?: object,
): Promise<any>
Envoie un message unique au(x) script(s) de contenu de l'onglet spécifié, avec un rappel facultatif à exécuter lorsqu'une réponse est renvoyée. L'événement runtime.onMessage est déclenché dans chaque script de contenu exécuté dans l'onglet spécifié pour l'extension actuelle.
Paramètres
- 
    tabIdTotal 
- 
    messagetous Message à envoyer. Ce message doit être un objet JSON-ifiable. 
- 
    optionsobject facultatif - 
    documentIdchaîne facultative Chrome 106 et versions ultérieuresEnvoyez un message à un document spécifique identifié par documentIdau lieu de tous les cadres de l'onglet.
- 
    frameIdnumber facultatif Envoyez un message à un cadre spécifique identifié par frameIdau lieu de tous les cadres de l'onglet.
 
- 
    
Renvoie
- 
            Promise<any> Chrome 99 et versions ultérieures
setZoom()
chrome.tabs.setZoom(
tabId?: number,
zoomFactor: number,
): Promise<void>
Zoom sur un onglet spécifié.
Paramètres
- 
    tabIdnumber facultatif ID de l'onglet à zoomer. Par défaut, il s'agit de l'onglet actif de la fenêtre actuelle. 
- 
    zoomFactorTotal Nouveau facteur de zoom. Une valeur de 0définit le facteur de zoom par défaut actuel de l'onglet. Les valeurs supérieures à0spécifient un facteur de zoom (éventuellement non défini par défaut) pour l'onglet.
Renvoie
- 
            Promise<void> Chrome 88 et versions ultérieures
setZoomSettings()
chrome.tabs.setZoomSettings(
tabId?: number,
zoomSettings: ZoomSettings,
): Promise<void>
Définit les paramètres de zoom d'un onglet spécifié, qui définissent la façon dont les modifications du zoom sont gérées. Ces paramètres sont réinitialisés sur les valeurs par défaut lorsque vous accédez à l'onglet.
Paramètres
- 
    tabIdnumber facultatif ID de l'onglet dont vous souhaitez modifier les paramètres de zoom. Par défaut, il s'agit de l'onglet actif de la fenêtre actuelle. 
- 
    zoomSettingsDéfinit la façon dont les modifications du zoom sont gérées et leur portée. 
Renvoie
- 
            Promise<void> Chrome 88 et versions ultérieures
ungroup()
chrome.tabs.ungroup(
tabIds: number | [number, ...number[]],
): Promise<void>
Supprime un ou plusieurs onglets de leurs groupes respectifs. Si des groupes deviennent vides, ils sont supprimés.
Paramètres
- 
    tabIdsnumber | [number, ...number[]] ID de l'onglet ou liste des ID d'onglets à supprimer de leurs groupes respectifs. 
Renvoie
- 
            Promise<void> 
update()
chrome.tabs.update(
tabId?: number,
updateProperties: object,
): Promise<Tab | undefined>
Modifie les propriétés d'un onglet. Les propriétés non spécifiées dans updateProperties ne sont pas modifiées.
Paramètres
- 
    tabIdnumber facultatif Par défaut, l'onglet sélectionné de la fenêtre actuelle est utilisé. 
- 
    updatePropertiesobjet - 
    actifbooléen facultatif Indique si l'onglet doit être actif. N'affecte pas la sélection de la fenêtre (voir windows.update).
- 
    autoDiscardablebooléen facultatif Chrome 54 et versions ultérieuresIndique si l'onglet doit être supprimé automatiquement par le navigateur lorsque les ressources sont faibles. 
- 
    en surbrillancebooléen facultatif Ajoute ou supprime l'onglet de la sélection actuelle. 
- 
    son coupébooléen facultatif Chrome 45 et versions ultérieuresIndique si l'onglet doit être mis en sourdine. 
- 
    openerTabIdnumber facultatif ID de l'onglet qui a ouvert cet onglet. Si elle est spécifiée, l'onglet d'ouverture doit se trouver dans la même fenêtre que cet onglet. 
- 
    épinglébooléen facultatif Indique si l'onglet doit être épinglé. 
- 
    sélectionnébooléen facultatif ObsolèteVeuillez utiliser highlighted. Indique si l'onglet doit être sélectionné. 
- 
    urlchaîne facultative URL vers laquelle l'onglet doit être redirigé. Les URL JavaScript ne sont pas acceptées. Utilisez plutôt scripting.executeScript.
 
- 
    
Renvoie
- 
            Promise<Tab | undefined> Chrome 88 et versions ultérieures
Événements
onActivated
chrome.tabs.onActivated.addListener(
callback: function,
)
Déclenché lorsque l'onglet actif d'une fenêtre change. Notez que l'URL de l'onglet peut ne pas être définie au moment où cet événement est déclenché, mais vous pouvez écouter les événements onUpdated pour être averti lorsqu'une URL est définie.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(activeInfo: object) => void - 
    activeInfoobjet - 
    tabIdTotal ID de l'onglet qui est devenu actif. 
- 
    windowIdTotal ID de la fenêtre dans laquelle l'onglet actif a changé. 
 
- 
    
 
- 
    
onAttached
chrome.tabs.onAttached.addListener(
callback: function,
)
Événement déclenché lorsqu'un onglet est associé à une fenêtre, par exemple parce qu'il a été déplacé d'une fenêtre à une autre.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(tabId: number, attachInfo: object) => void - 
    tabIdTotal 
- 
    attachInfoobjet - 
    newPositionTotal 
- 
    newWindowIdTotal 
 
- 
    
 
- 
    
onCreated
chrome.tabs.onCreated.addListener(
callback: function,
)
Déclenché lorsqu'un onglet est créé. Notez que l'URL de l'onglet et l'appartenance à un groupe d'onglets peuvent ne pas être définies au moment où cet événement est déclenché. Toutefois, vous pouvez écouter les événements onUpdated pour être averti lorsqu'une URL est définie ou que l'onglet est ajouté à un groupe d'onglets.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(tab: Tab) => void - 
    tabulation
 
- 
    
onDetached
chrome.tabs.onDetached.addListener(
callback: function,
)
Événement déclenché lorsqu'un onglet est détaché d'une fenêtre, par exemple parce qu'il a été déplacé d'une fenêtre à une autre.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(tabId: number, detachInfo: object) => void - 
    tabIdTotal 
- 
    detachInfoobjet - 
    oldPositionTotal 
- 
    oldWindowIdTotal 
 
- 
    
 
- 
    
onHighlighted
chrome.tabs.onHighlighted.addListener(
callback: function,
)
Déclenché lorsque les onglets mis en surbrillance ou sélectionnés dans une fenêtre changent.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(highlightInfo: object) => void - 
    highlightInfoobjet - 
    tabIdsnumber[] Tous les onglets mis en surbrillance dans la fenêtre. 
- 
    windowIdTotal Fenêtre dont les onglets ont été modifiés. 
 
- 
    
 
- 
    
onMoved
chrome.tabs.onMoved.addListener(
callback: function,
)
Événement déclenché lorsqu'un onglet est déplacé dans une fenêtre. Un seul événement de déplacement est déclenché, représentant l'onglet que l'utilisateur a directement déplacé. Les événements de déplacement ne sont pas déclenchés pour les autres onglets qui doivent se déplacer en réponse à l'onglet déplacé manuellement. Cet événement n'est pas déclenché lorsqu'un onglet est déplacé d'une fenêtre à une autre. Pour en savoir plus, consultez tabs.onDetached.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(tabId: number, moveInfo: object) => void - 
    tabIdTotal 
- 
    moveInfoobjet - 
    fromIndexTotal 
- 
    toIndexTotal 
- 
    windowIdTotal 
 
- 
    
 
- 
    
onRemoved
chrome.tabs.onRemoved.addListener(
callback: function,
)
Déclenché lorsqu'un onglet est fermé.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(tabId: number, removeInfo: object) => void - 
    tabIdTotal 
- 
    removeInfoobjet - 
    isWindowClosingbooléen Vrai si l'onglet a été fermé parce que sa fenêtre parente a été fermée. 
- 
    windowIdTotal La fenêtre dont l'onglet est fermé. 
 
- 
    
 
- 
    
onReplaced
chrome.tabs.onReplaced.addListener(
callback: function,
)
Événement déclenché lorsqu'un onglet est remplacé par un autre en raison du prérendu ou de l'instantané.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(addedTabId: number, removedTabId: number) => void - 
    addedTabIdTotal 
- 
    removedTabIdTotal 
 
- 
    
onUpdated
chrome.tabs.onUpdated.addListener(
callback: function,
)
Déclenché lorsqu'un onglet est mis à jour.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(tabId: number, changeInfo: object, tab: Tab) => void - 
    tabIdTotal 
- 
    changeInfoobjet - 
    audiblebooléen facultatif Chrome 45 et versions ultérieuresNouvel état audible de l'onglet. 
- 
    autoDiscardablebooléen facultatif Chrome 54 et versions ultérieuresNouvel état de l'onglet (peut être supprimé automatiquement ou non). 
- 
    avez supprimébooléen facultatif Chrome 54 et versions ultérieuresNouvel état de l'onglet (supprimé). 
- 
    favIconUrlchaîne facultative Nouvelle URL du favicon de l'onglet. 
- 
    figébooléen facultatif Chrome 132 et versions ultérieuresNouvel état figé de l'onglet. 
- 
    groupIdnumber facultatif Chrome 88 et versions ultérieuresLe nouveau groupe de l'onglet. 
- 
    mutedInfoMutedInfo facultatif Chrome 46 et versions ultérieuresLe nouvel état de la vidéo (désactivée ou non) et la raison de ce changement. 
- 
    épinglébooléen facultatif Nouvel état d'épinglage de l'onglet. 
- 
    splitViewIdnumber facultatif Chrome 140 et versions ultérieuresNouvelle vue fractionnée de l'onglet. 
- 
    étatTabStatus facultatif État de chargement de l'onglet. 
- 
    titrechaîne facultative Chrome 48 et versions ultérieuresNouveau titre de l'onglet. 
- 
    urlchaîne facultative URL de l'onglet si elle a changé. 
 
- 
    
- 
    tabulation
 
- 
    
onZoomChange
chrome.tabs.onZoomChange.addListener(
callback: function,
)
Déclenché lorsqu'un onglet est agrandi.
Paramètres
- 
    callbackfonction Le paramètre callbackse présente comme suit :(ZoomChangeInfo: object) => void - 
    ZoomChangeInfoobjet - 
    newZoomFactorTotal 
- 
    oldZoomFactorTotal 
- 
    tabIdTotal 
- 
    zoomSettings
 
- 
    
 
-