Tôi đang viết một ứng dụng web trò chuyện mà cần phải có khả năng kích hoạt các thông báo đẩy máy tính để bàn thông qua các thông báo API: https://developer.mozilla.org/en-US/docs/Web/API/Notifications_APIkhông phù hợp/Chậm HTML5 Desktop Đẩy Thông báo trên Chrome
Thật không may, có vẻ như các thông báo không hiển thị lên cho đến khi tôi tuôn hết ra bằng cách thông báo khác với fiddle này: https://jsfiddle.net/yoshi6jp/Umc9A/
Đây là mã mà tôi đang sử dụng:
function triggerDesktopNotification() {
function makeNotification() {
var notification = new Notification('AppName', {
body: 'You have a new message!',
icon: '/favicon.ico',
});
notification.onclick =() => {
notification.close();
};
}
if (Notification.permission === 'granted') {
makeNotification();
}
else if (Notification.permission !== 'denied') {
Notification.requestPermission(function (permission) {
if (permission === 'granted') {
makeNotification();
}
});
}
}
tôi có thể xác nhận rằng mã thực thi đúng bởi đặt console.log()
ngay sau cuộc gọi new Notification
. Thật thú vị, nếu tôi đặt một số alert()
ở đó, thông báo sẽ hiển thị khi tôi thấy hộp cảnh báo (sau khi điều hướng trở lại tab của tôi).