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 en cours.
loadReplaceFacultatif

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

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

ChromeEdgeFirefoxFirefox for AndroidOpera
Support simple Oui Oui4554 Oui
updateProperties.active Oui Oui4554 Oui
updateProperties.autoDiscardable54 Non Non Non41
updateProperties.highlighted Oui Non Non Non Oui
updateProperties.loadReplace Non Non57 Non Non
updateProperties.muted45 Non455432
updateProperties.openerTabId18 Non57 Non15
updateProperties.pinned Oui Non4554 Oui
updateProperties.selected Oui Non Non Non Oui
updateProperties.url Oui Oui4554 Oui

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,