browserSettings.webNotificationsDisabled

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

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

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

请注意,这不会影响用户已为其设置每个网站首选项的网站。例如,如果用户将 https://example.org 设置为允许,然后扩展程序将 browserSettings.webNotificationsDisabled 设置为 true,则 https://example.org 下的页面仍将被允许显示通知。

browserSettings.webNotificationsDisabled 设置为 false 会将全局默认值切换回其默认值。

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

浏览器兼容性

BCD 表仅在浏览器中加载

示例

切换设置

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();
});