Длительность отображения веб-уведомлений - PullRequest
0 голосов
/ 30 января 2019

Я отправляю уведомление по сети.Я хочу отображать до десяти минут, если пользователь не нажимает на уведомление.

Я использовал setTimeout, но он отображается около 15 секунд, а затем скрыт.пожалуйста, ведите меня.

Это мой код:

function notify(title, message, link) {
    var option = {
        body: message,
        dir: 'rtl',
        title: title,
        icon: '/Images/notification.png',
    }

    var notify = new Notification(title, option);

    notify.onclick = function () {
        window.open(link, '_blank');
        notify.close();
    };

    notification.onshow = function () {
        setTimeout(notification.close, 600000);
    }
}

Ответы [ 2 ]

0 голосов
/ 30 января 2019

Я обновил ваш код.Пусть это поможет вам!

var options = {
            body: "My notification message",
            dir : "ltr",
            requireInteraction: true
};

var notify = new Notification('Hello User', options);
notify.onclick = function () {
    notify.close();
};

notify.onshow = function () {
    setTimeout(()=>{
        notify.close();
    }, 15000);
}
0 голосов
/ 30 января 2019

Просто добавьте свойство requireInteraction.

var option = {
    body: message,
    dir: 'rtl',
    title: title,
    icon: '/Images/notification.png',
    requireInteraction: true,
}

Свойство requireInteraction только для чтения интерфейса Notification возвращает логическое значение, указывающее, что уведомление должно оставаться активным до тех пор, пока пользователь не щелкнет или не отклонит его.вместо автоматического закрытия.

Смотрите здесь: https://developer.mozilla.org/en-US/docs/Web/API/notification/requireInteraction

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...