【问题标题】:How to keep Notification click event after refresh the page in web?刷新网页后如何保持通知点击事件?
【发布时间】:2018-05-09 08:59:16
【问题描述】:
function sendNotification (title = 'Hi') {
  var a = new Notification(title, {
    requireInteraction: true,
    renotify: true,
    tag: 123,
  })

  a.onclick = function () { // Click event will lose after refresh
    console.log('get')  
  }
}

if (!("Notification" in window)) {
  alert("not support");
}

else if (Notification.permission === "granted") {
  // If it's okay let's create a notification
  sendNotification()
}

else if (Notification.permission !== 'denied') {
  Notification.requestPermission()
  .then(
    permission => {
      if (permission === "granted") {
        sendNotification()
      }
    }
  )
}

上面的代码会创建一个通知并保持通知不消失。当我点击通知时会记录123,但刷新页面后我丢失了点击事件的通知和变量a。

为了测试方便,我添加了鉴权。你可以复制代码到浏览器控制台调试。

【问题讨论】:

  • 您是否尝试在onload event 上触发a.onclick
  • 我也遇到了同样的问题,你有没有解决这个问题?

标签: javascript web


【解决方案1】:

试试下面的代码:

document.onload = function(){
    a.onclick = function () {
      console.log(123)
    }
};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-19
    • 1970-01-01
    相关资源
    最近更新 更多