Sets zoom settings for the specified tab. These settings are reset to the default settings upon navigating the tab.

This is an asynchronous function that returns a Promise.


var settingZoomSettings = browser.tabs.setZoomSettings(
  tabId,           // optional integer
  zoomSettings     // ZoomSettings


integer. The ID of the tab to change the zoom settings for. Defaults to the active tab of the current window.
tabs.ZoomSettings. Defines how zoom changes are handled and at what scope.

Values of this type are objects. They contain the following properties:

number. The default zoom level for the current tab. Note that this is only used in tabs.getZoomSettings.
tabs.ZoomSettingsMode. Defines whether zoom changes are handled by the browser, by the extension, or are disabled.
tabs.ZoomSettingsScope. Defines whether zoom changes will persist for the page's origin, or only take effect in this tab.

Return value

A Promise that will be fulfilled with no arguments after the zoom settings have been changed. If the tab could not be found or some other error occurs, the promise will be rejected with an error message.

Browser compatibility

ChromeEdgeFirefoxFirefox for AndroidOpera
Basic support Yes No No No Yes


Disable zooming for the current tab:

function onSet() {
  console.log(`Set zoom factor`);

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

var setting = browser.tabs.setZoomSettings({mode:"disabled"});
setting.then(onSet, onError);


This API is based on Chromium's chrome.tabs API. This documentation is derived from tabs.json in the Chromium code.

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

Document Tags and Contributors

Contributors to this page: wbamberg, Makyen
Last updated by: wbamberg,