如何在Firefox中保持通知打开?

时间:2014-08-08 18:16:15

标签: javascript notifications

我有一个聊天程序,我希望人们离开他们的办公桌。当他们回来时,我希望通知仍然在屏幕上。 Chrome可以永久保留通知,但firefox会自动关闭。这不是很好,因为用户不会盯着他们的监视器

Firefox似乎会自动关闭通知。是否有一种很好的方式让它保持开放状态?

1 个答案:

答案 0 :(得分:3)

我目前只是在关闭时重新打开通知,当我明确关闭它时(点击一下),然后我允许它实际关闭。

// This assumes you already checked for permissions and have notifications working

var MyNotify = function(message) {
  this.message = message;
  this.open();
};

MyNotify.prototype.open = function() {
  var self = this;

  // Notification is the native browser method
  self.instance = new Notification(self.message);

  self.instance.addEventListener('close', function(){
    // We force firefox to continually respawn notifications until they explicitly close
    if (!self.shouldClose)
      self.open();
  });

  self.instance.addEventListener('click', function(){
    self.close();
  });

};

MyNotify.prototype.close = function() {
  self.shouldClose = true;
  self.instance.close();
};

new MyNotify('Hello World');