tabs.update()

Parcourez l'onglet vers une nouvelle URL ou modifiez d'autres propriétés de l'onglet.

Pour utiliser cette fonction, transmettez l'ID de l'onglet à mettre à jour et un objet updateProperties contenant les propriétés que vous souhaitez mettre à jour. Les propriétés qui ne sont pas spécifiées dans  updateProperties ne sont pas modifiées.

C'est une fonction asynchrone qui renvoie une Promise.

Syntaxe

var updating = browser.tabs.update(
  tabId,              // optional integer
  updateProperties    // object
)

Paramètres

tabIdFacultatif
integer. Par défaut à l'onglet sélectionné de la fenêtre en cours.
updateProperties
object. L'ensemble des propriétés à mettre à jour pour cet onglet. Pour en savoir plus sur ces propriétés, consultez la documentation  tabs.Tab.
activeFacultatif
boolean. Si l'onglet doit être actif. N'affecte pas si la fenêtre est mise au point (voir windows.update).
autoDiscardableFacultatif
boolean. Si l'onglet doit être supprimé automatiquement par le navigateur lorsque les ressources sont faibles.
highlightedFacultatif
boolean. Ajoute ou supprime l'onglet de la sélection courante. Si true et que l'onglet n'est pas surligné, il deviendra actif par défaut.

Si vous voulez seulement mettre en surbrillance l'onglet sans l'activer, Firefox accepte le réglage highlighted à true et active à false. D'autres navigateurs peuvent activer l'onglet même dans ce cas.

loadReplaceFacultatif

boolean. Si la nouvelle URL doit remplacer l'ancienne URL dans l'historique de navigation de l'onglet, accessible via le bouton "Retour".

Par exemple, supposons que l'utilisateur crée un nouvel onglet en utilisant Ctrl + T. Par défaut, dans Firefox, cela chargerait "about:newtab". Si votre extension met alors à jour cette page en utilisant tabs.update, sans loadReplace, le bouton "retour" sera activé et ramènera l'utilisateur à "about:newtab". Si l'extension définit loadReplace, le bouton "retour" sera désactivé et ce sera comme si l'URL fournie par l'extension était la première page visitée dans cet onglet.

Notez cependant que l'URL d'origine apparaîtra toujours dans l'historique global du navigateur.

mutedFacultatif
boolean. Si l'onglet doit être coupé.
openerTabIdFacultatif
integer. L'ID de l'onglet qui a ouvert cet onglet. Si spécifié, l'onglet d'ouverture doit être dans la même fenêtre que cet onglet.
pinnedFacultatif
boolean. Si l'onglet doit être épinglé.
selected Facultatif
boolean. Si l'onglet doit être sélectionné.
urlFacultatif
string. Une URL pour naviguer dans l'onglet. 
Pour des raisons de sécurité, dans Firefox, il se peut que ce ne soit pas une URL privilégiée. Le passage de l'une des URL suivantes échouera, avec runtime.lastError étant défini sur un message d'erreur :
  • chrome: URLs
  • javascript: URLs
  • data: URLs
  • file: URLs (c'est-à-dire, fichiers sur le système de fichiers, cependant, pour utiliser un fichier empaqueté à l'intérieur de l'extension, voir ci-dessous)
  • privileged about: URLs (par exemle, about:config, about:addons, about:debugging, about:newtab) . Les URL non privilégiées (about:home, about:blank) sont autorisées.
Pour charger une page fournie avec votre extension, spécifiez une URL absolue à partir du fichier manifest.json de l'extension. Par exemple : '/path/to/my-page.html'. Si vous omettez le premier caractère '/', l'URL est traitée comme une URL relative et différents navigateurs peuvent construire différentes URL absolues.

Valeur retournée

A Promise qui sera remplie avec un objet tabs.Tab contenant des détails sur l'onglet mis à jour. L'objet tabs.Tab ne contient pas d' url, title et favIconUrl sauf si la permission "tabs" a été demandée. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.

Compatibilité du navigateur

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxOperaFirefox pour Android
Support simpleChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
updateProperties.activeChrome Support complet OuiEdge Support complet 14Firefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
updateProperties.autoDiscardableChrome Support complet 54Edge Aucun support NonFirefox Aucun support NonOpera Support complet 41Firefox Android Aucun support Non
updateProperties.highlightedChrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Support complet OuiFirefox Android Aucun support Non
updateProperties.loadReplaceChrome Aucun support NonEdge Aucun support NonFirefox Support complet 57Opera Aucun support NonFirefox Android Aucun support Non
updateProperties.mutedChrome Support complet 45Edge Aucun support NonFirefox Support complet 45Opera Support complet 32Firefox Android Support complet 54
updateProperties.openerTabIdChrome Support complet 18Edge Aucun support NonFirefox Support complet 57Opera Support complet 15Firefox Android Aucun support Non
updateProperties.pinnedChrome Support complet OuiEdge Aucun support NonFirefox Support complet 45Opera Support complet OuiFirefox Android Support complet 54
updateProperties.selected
ObsolèteNon-standard
Chrome Support complet OuiEdge Aucun support NonFirefox Aucun support NonOpera Support complet OuiFirefox Android Aucun support Non
updateProperties.urlChrome 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é 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é.

Exemples

Naviguez dans l'onglet actif de la fenêtre en cours pour https://developer.mozilla.org :

function onUpdated(tab) {
  console.log(`Updated tab: ${tab.id}`);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var updating = browser.tabs.update({url: "https://developer.mozilla.org"});
updating.then(onUpdated, onError);

Activez le premier onglet de la fenêtre actuelle et naviguez jusqu'à https://developer.mozilla.org:

function onUpdated(tab) {
  console.log(`Updated tab: ${tab.id}`);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

function updateFirstTab(tabs) {
  var updating = browser.tabs.update(tabs[0].id, {
    active: true,
    url: "https://developer.mozilla.org"
  });
  updating.then(onUpdated, onError);
}

var querying = browser.tabs.query({currentWindow:true});
querying.then(updateFirstTab, onError);

Example extensions

Remerciements :

Cette API est basée sur l’API chrome.tabs de Chromium. 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 : hellosct1
Dernière mise à jour par : hellosct1,