正在重置通知 API 权限
Notification API permission being reset
我正在尝试创建一个聊天室并准备好所有内容 运行,但在桌面通知方面遇到了困难。每当我请求通知权限并将访问权限设置为 'granted' 时,权限将重置为 'default',不允许显示通知。有没有办法让权限保持设置为 'granted',或者我是否必须让他们在每次发送新消息时都允许通知? 运行 它作为本地文件(在 ChromeOS 上)涉及保护吗?这是有关通知的部分代码:
function showNotification() {
var title = "New Message!";
var messageValueNotif = document.querySelectorAll(".message");
if (messageValueNotif.length !== 0) {
messageValueNotif = messageValueNotif[messageValueNotif.length - 1].innerHTML;
} else {
return false;
}
var currentFavicon = document.querySelector('link').href;
var notif = new Notification(title, {
body: messageValueNotif,
icon: currentFavicon
});
notif.onclick = () => {
notif.close();
window.parent.focus();
}
}
function requestAndShowPermission() {
if (Notification.permission === 'granted') {
showNotification();
} else if (Notification.permission !== 'denied') {
Notification.requestPermission().then(function(permission) {
showNotification()
});
}
}
window.onload = requestAndShowPermission();
这显然是 ChromeOS 的文件保护。
我正在尝试创建一个聊天室并准备好所有内容 运行,但在桌面通知方面遇到了困难。每当我请求通知权限并将访问权限设置为 'granted' 时,权限将重置为 'default',不允许显示通知。有没有办法让权限保持设置为 'granted',或者我是否必须让他们在每次发送新消息时都允许通知? 运行 它作为本地文件(在 ChromeOS 上)涉及保护吗?这是有关通知的部分代码:
function showNotification() {
var title = "New Message!";
var messageValueNotif = document.querySelectorAll(".message");
if (messageValueNotif.length !== 0) {
messageValueNotif = messageValueNotif[messageValueNotif.length - 1].innerHTML;
} else {
return false;
}
var currentFavicon = document.querySelector('link').href;
var notif = new Notification(title, {
body: messageValueNotif,
icon: currentFavicon
});
notif.onclick = () => {
notif.close();
window.parent.focus();
}
}
function requestAndShowPermission() {
if (Notification.permission === 'granted') {
showNotification();
} else if (Notification.permission !== 'denied') {
Notification.requestPermission().then(function(permission) {
showNotification()
});
}
}
window.onload = requestAndShowPermission();
这显然是 ChromeOS 的文件保护。