Permet d’interagir avec le système d’onglets du navigateur.

Vous pouvez utiliser cette API pour obtenir une liste des onglets ouverts, filtrés par différents critères, ainsi que pour ouvrir, mettre à jour, déplacer, recharger et supprimer des onglets. Vous ne pouvez pas accéder directement au contenu hébergé par les onglets à l’aide de cette API, mais vous pouvez insérer du JavaScript et du CSS dans les onglets en utilisant les API tabs.executeScript() ou tabs.insertCSS().

Vous pouvez utiliser la majeure partie de cette API sans autorisation spéciale. Toutefois :

Alternativement, vous pouvez obtenir ces autorisations temporairement, uniquement pour l’onglet actuellement actif et uniquement en réponse à une action explicite de l’utilisateur ou de l’utilisatrice, en demandant la permission "activeTab".

De nombreuses opérations d’onglet utilisent un identifiant (id) d’onglet. Les id d’onglets sont seulement garantis uniques à un onglet durant une session de navigation. Si le navigateur est redémarré, il pourra recycler, et recyclera, les id d’onglets. Pour associer des informations à un onglet à travers les redémarrages du navigateur, utilisez sessions.setTabValue().

Types

tabs.MutedInfoReason
Spécifie la raison pour laquelle un onglet a été rendu silencieux ou à nouveau sonore.
tabs.MutedInfo
Cet objet contient un booléen indiquant si l’onglet est silencieux et la raison de la dernière modification de l’état.
tabs.PageSettings

Permet de contrôler le rendu d’un onglet au format PDF par la méthode tabs.saveAsPDF().

tabs.Tab
Ce type contient des informations sur un onglet.
tabs.TabStatus
Indique si l’onglet a fini de charger.
tabs.WindowType
Le type de fenêtre qui héberge cet onglet.
tabs.ZoomSettingsMode
Définit si les modifications de zoom sont traitées par le navigateur, par l’extension ou sont désactivées.
tabs.ZoomSettingsScope
Définit si les modifications de zoom persisteront pour l’origine de la page ou ne prendront effet que dans cet onglet.
tabs.ZoomSettings
Définit les paramètres de zoom mode, scope, et le facteur de zoom par défaut.

Propriétés

tabs.TAB_ID_NONE
Une valeur d’id spéciale donnée aux onglets qui ne sont pas des onglets de navigation (par exemple, les onglets dans les fenêtres devtools).

Fonctions

tabs.captureTab()
Crée un URI de données codant une image de la zone visible de l’onglet donné.
tabs.captureVisibleTab()
Crée un URI de données codant une image de la zone visible de l’onglet actuellement actif dans la fenêtre donnée.
tabs.connect()
Définit une connexion pour échanger des messages entre les scripts d’arrière-plan de l’extension (ou d’autres scripts privilégiés, tels que les scripts de popups ou les scripts de page d’options) et les scripts de contenu s’exécutant dans l’onglet spécifié.
tabs.create()
Crée un nouvel onglet.
tabs.detectLanguage()
Détecte la langue principale du contenu dans un onglet.
tabs.discard()
Évince un ou plusieurs onglets.
tabs.duplicate()
Duplique un onglet.
tabs.executeScript()
Injecte du code JavaScript dans une page.
tabs.get()
Obtient des détails sur l’onglet spécifié.
tabs.getAllInWindow()
Obtient des détails sur tous les onglets de la fenêtre spécifiée.
tabs.getCurrent()
Obtient des informations sur l’onglet dans lequel ce script s’exécute, en tant qu’objet tabs.Tab.
tabs.getSelected()
Obtient l’onglet sélectionné dans la fenêtre spécifiée.
tabs.getZoom()
Obtient le facteur de zoom actuel de l’onglet spécifié.
tabs.getZoomSettings()
Obtient les paramètres de zoom actuels pour l’onglet spécifié.
tabs.hide()
Masque un ou plusieurs onglets.
tabs.highlight()
Met en évidence un ou plusieurs onglets.
tabs.insertCSS()
Injecte CSS dans une page.
tabs.move()
Déplace un ou plusieurs onglets vers une nouvelle position dans la même fenêtre ou vers une autre fenêtre.
tabs.moveInSuccession()
Modifie la relation de succession pour un groupe d’onglets.
tabs.print()
Imprime le contenu de l’onglet actif.
tabs.printPreview()
Ouvre l’aperçu avant impression pour l’onglet actif.
tabs.query()
Obtient tous les onglets ayant les propriétés spécifiées, ou tous les onglets si aucune propriété n’est spécifiée.
tabs.reload()
Recharge un onglet, en contournant éventuellement le cache web local.
tabs.remove()
Ferme un ou plusieurs onglets.
tabs.removeCSS()
Supprime d’une page CSS qui a été précédemment injectée en appelant tabs.insertCSS().
tabs.saveAsPDF()
Enregistre la page en cours au format PDF.
tabs.sendMessage()
Envoie un message unique au(x) script(s) de contenu dans l’onglet spécifié.
tabs.sendRequest()
Envoie une requête unique au(x) script(s) de contenu dans l’onglet spécifié. Déprécié : utilisez tabs.sendMessage() à la place.
tabs.setZoom()
Effectue un zoom sur l’onglet spécifié.
tabs.setZoomSettings()
Définit les paramètres de zoom pour l’onglet spécifié.
tabs.show()
Affiche un ou plusieurs onglets qui ont été masqués.
tabs.toggleReaderMode()
Bascule en mode lecture pour l’onglet spécifié.
tabs.update()
Charge une nouvelle URL dans l’onglet, ou modifie d’autres propriétés de l’onglet.

Évènements

tabs.onActivated
Est émis lorsque l’onglet actif dans une fenêtre change. Notez que l’URL de l’onglet peut ne pas être définie au moment où cet évènement a été émis.
tabs.onActiveChanged
Est émis lorsque l’onglet sélectionné dans une fenêtre change. Déprécié : utilisez tabs.onActivated à la place.
tabs.onAttached
Est émis lorsqu’un onglet est attaché à une fenêtre, par exemple parce qu’il a été déplacé entre différentes fenêtres.
tabs.onCreated
Est émis lorsqu’un onglet est créé. Notez que l’URL de l’onglet peut ne pas être définie au moment où cet évènement a été émis.
tabs.onDetached
Est émis lorsqu’un onglet est détaché d’une fenêtre, par exemple parce qu’il a été déplacé entre différentes fenêtres.
tabs.onHighlightChanged
Est émis lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent. Déprécié : utilisez tabs.onHighlighted à la place.
tabs.onHighlighted
Est émis lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent.
tabs.onMoved
Est émis lorsqu’un onglet est déplacé dans une fenêtre.
tabs.onRemoved
Est émis lorsqu’un onglet est fermé.
tabs.onReplaced
Est émis lorsqu’un onglet est remplacé par un autre onglet en raison d’un prerendering.
tabs.onSelectionChanged
Est émis lorsque l’onglet sélectionné dans une fenêtre change. Déprécié : utilisez tabs.onActivated à la place.
tabs.onUpdated
Est émis lorsqu’un onglet est mis à jour.
tabs.onZoomChange
Est émis lorsque le zoom dans un onglet est changé.

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxOperaFirefox pour Android
MutedInfoChrome Support complet OuiEdge Aucun support NonFirefox Support complet 47Opera Support complet OuiFirefox Android Aucun support Non
MutedInfoReasonChrome Support complet OuiEdge Aucun support NonFirefox Support complet 47Opera Support complet OuiFirefox Android Aucun support Non
PageSettingsChrome Aucun support NonEdge Aucun support NonFirefox Support complet 56Opera Aucun support NonFirefox Android Aucun support Non
TAB_ID_NONEChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
TabStatusChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
WindowTypeChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
ZoomSettingsChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
ZoomSettingsModeChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
ZoomSettingsScopeChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
captureTabChrome Aucun support NonEdge Aucun support NonFirefox Support complet 59Opera Aucun support NonFirefox Android Aucun support Non
captureVisibleTabChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes The default file format is 'jpeg'.
Edge Support complet 15Firefox Support complet 47Opera Support complet Oui
Notes
Support complet Oui
Notes
Notes The default file format is 'jpeg'.
Firefox Android Support complet 54
connectChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
createChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
detectLanguageChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
discardChrome Support complet 54
Notes
Support complet 54
Notes
Notes Only accepts a single tab ID as a parameter, not an array.
Notes The tab ID argument is optional: if it is omitted, the browser discards the least important tab.
Notes The callback is passed a Tab object representing the tab that was discarded.
Notes Tabs whose document contains a beforeunload listener that displays a prompt will be discarded.
Edge Support complet 14Firefox Support complet 58Opera Support complet Oui
Notes
Support complet Oui
Notes
Notes Only accepts a single tab ID as a parameter, not an array.
Notes The tab ID argument is optional: if it is omitted, the browser discards the least important tab.
Notes The callback is passed a Tab object representing the tab that was discarded.
Notes Tabs whose document contains a beforeunload listener that displays a prompt will be discarded.
Firefox Android Aucun support Non
duplicateChrome Support complet OuiEdge Aucun support NonFirefox Support complet 47Opera Support complet OuiFirefox Android Aucun support Non
executeScriptChrome Support complet Oui
Notes
Support complet Oui
Notes
Notes Extensions can't inject scripts into their own pages using this API.
Edge Support complet 14Firefox Support complet 43
Notes
Support complet 43
Notes
Notes Before version 50, Firefox would pass a single result value into its callback rather than an array, unless 'allFrames' had been set.
Opera Support complet Oui
Notes
Support complet Oui
Notes
Notes Extensions can't inject scripts into their own pages using this API.
Firefox Android Support complet 54
getChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
getAllInWindow
ObsolèteNon-standard
Chrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Aucun support NonFirefox Android Aucun support Non
getCurrentChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
getSelected
ObsolèteNon-standard
Chrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Aucun support NonFirefox Android Aucun support Non
getZoomChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
getZoomSettingsChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
hide
Non-standard
Chrome Aucun support NonEdge Aucun support NonFirefox Support complet 61
Support complet 61
Aucun support 59 — 61
Désactivée
Désactivée From version 59 until version 61 (exclusive): this feature is behind the extensions.webextensions.tabhide.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Aucun support NonFirefox Android Aucun support Non
highlightChrome Support complet OuiEdge Aucun support NonFirefox Support complet 63Opera Aucun support NonFirefox Android Aucun support Non
insertCSSChrome Support complet OuiEdge Support complet 14Firefox Support complet 47Opera Support complet OuiFirefox Android Support complet 54
moveChrome Support complet OuiEdge Aucun support NonFirefox Support complet 46Opera Support complet OuiFirefox Android Aucun support Non
moveInSuccessionChrome Aucun support NonEdge Aucun support NonFirefox Support complet 65Opera Aucun support NonFirefox Android Aucun support Non
onActivatedChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
onActiveChanged
ObsolèteNon-standard
Chrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Aucun support NonFirefox Android Aucun support Non
onAttachedChrome Support complet OuiEdge Support complet 15Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
onCreatedChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
onDetachedChrome Support complet OuiEdge Support complet 15Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
onHighlightChanged
ObsolèteNon-standard
Chrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Aucun support NonFirefox Android Aucun support Non
onHighlightedChrome Support complet OuiEdge Aucun support NonFirefox Support complet 63
Support complet 63
Aucun support 45 — 62
Notes
Notes Implemented as an alias for onActivated.
Opera Aucun support NonFirefox Android Support complet 54
Notes
Support complet 54
Notes
Notes Implemented as an alias for onActivated.
onMovedChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
onRemovedChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
onReplacedChrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Support complet OuiFirefox Android Aucun support Non
onSelectionChanged
ObsolèteNon-standard
Chrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Aucun support NonFirefox Android Aucun support Non
onUpdatedChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
onZoomChangeChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
printChrome Aucun support NonEdge Aucun support NonFirefox Support complet 56Opera Aucun support NonFirefox Android Aucun support Non
printPreviewChrome Aucun support NonEdge Aucun support NonFirefox Support complet 56Opera Aucun support NonFirefox Android Aucun support Non
queryChrome Support complet OuiEdge Support complet 14
Notes
Support complet 14
Notes
Notes The panel, app, devtools and popup values for WindowType are not supported.
Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
reloadChrome Support complet OuiEdge Support complet 17Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
removeChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
removeCSSChrome Aucun support NonEdge Aucun support NonFirefox Support complet 49Opera Aucun support NonFirefox Android Support complet 54
saveAsPDFChrome Aucun support NonEdge Aucun support NonFirefox Support complet 56
Notes
Support complet 56
Notes
Notes This function does not work on macOS.
Opera Aucun support NonFirefox Android Aucun support Non
sendMessageChrome Support complet OuiEdge Support complet 14
Notes
Support complet 14
Notes
Notes No response is sent after the receiving tab is refreshed if there is no `runtime.onMessage` listener.
Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
sendRequest
ObsolèteNon-standard
Chrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Aucun support NonFirefox Android Aucun support Non
setZoomChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Aucun support Non
setZoomSettingsChrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Support complet OuiFirefox Android Aucun support Non
show
ExpérimentaleNon-standard
Chrome Aucun support NonEdge Aucun support NonFirefox Support complet 61
Support complet 61
Aucun support 59 — 61
Désactivée
Désactivée From version 59 until version 61 (exclusive): this feature is behind the extensions.webextensions.tabhide.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Aucun support NonFirefox Android Aucun support Non
toggleReaderModeChrome Aucun support NonEdge Aucun support NonFirefox Support complet 58Opera Aucun support NonFirefox Android Aucun support Non
updateChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54

Légende

Support complet  
Support complet
Aucun support  
Aucun support
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Fonctionnalité non-standard. Celle-ci peut être incorrectement supportée par les autres navigateurs.
Fonctionnalité non-standard. Celle-ci peut être incorrectement supportée par les autres navigateurs.
Obsolète. Les nouveaux sites web ne doivent pas utiliser cette fonctionnalité.
Obsolète. Les nouveaux sites web ne doivent pas utiliser cette fonctionnalité.
Voir les notes d'implémentation.
Voir les notes d'implémentation.
Une action explicite de l'utilisateur est nécessaire pour activer cette fonctionnalité.
Une action explicite de l'utilisateur est nécessaire pour activer cette fonctionnalité.

Example extensions

Remerciements :

Cette API est basée sur l’API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

Étiquettes et contributeurs liés au document

Contributeurs à cette page : Watilin, mdnwebdocs-bot, hellosct1, wbamberg, Rik, Ostefanini, Sheppy
Dernière mise à jour par : Watilin,