browserSettings.webNotificationsDisabled

一个 BrowserSetting 对象,可用于阻止网站使用 Notifications Web API 显示通知。

Notifications API 用于向用户显示桌面通知。通知有三个权限级别:允许拒绝提示。用户可以为每个网站设置此权限。如果用户未为特定网站设置权限,则浏览器将回退到全局权限,而全局权限默认为提示

browserSettings.webNotificationsDisabled 设置为 true 会将全局权限切换为拒绝

请注意,这不会影响用户已为之设置了站点内偏好的网站。例如,如果用户将 https://example.org 设置为允许,然后扩展将 browserSettings.webNotificationsDisabled 设置为 true,那么 https://example.org 下的页面仍将允许显示通知。

browserSettings.webNotificationsDisabled 设置为 false 会将全局默认值恢复为默认值。

请注意,此设置不会影响使用 notifications API 创建的扩展通知。

示例

切换设置

js
async function toggleWebNotifications() {
  let current = await browser.browserSettings.webNotificationsDisabled.get({});
  console.log(`Current value: ${current.value}`);
  browser.browserSettings.webNotificationsDisabled.set({
    value: !current.value,
  });
}

browser.browserAction.onClicked.addListener(() => {
  toggleWebNotifications();
});

浏览器兼容性