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