我正在使用firefox SDK的通知功能来创建firefox扩展。问题是,在显示通知后它消失得太快,有没有办法修改通知的超时?这是我正在使用的代码:
notifications.notify({
title: "notification title",
text: " notification text ",
data: List[i] ,
onClick: function (data) {
tabs.open(data);
}
});
答案 0 :(得分:1)
无法控制动画。 @canuckistani是右半:SDK notifications
和HTML5通知都使用相同的底层服务nsIAlertsService
。此服务不允许您控制持续时间。
桌面Firefox不使用系统级服务,但Metro实施除外(尚未正式发布且不支持附加组件IIRC)。相反,他们使用的是XUL警报服务实现,只有some XUL with some Javascript and some additional CSS。some code to open the window。
根据某些pref,将使用通过setTimeout
的硬编码4000毫秒超时,或4s CSS动画。
虽然不方便,特别是在SDK附加组件中没有获得chrome包以打开自己的XUL窗口,但是您可以使用控件来复制/粘贴实现您自己的XUL窗口的分支。 ,甚至覆盖Firefox的默认值。 我现在不记得这个名字了,但是我知道至少有一个附加组件可以做到这一点,重写内置实现并让用户选择自定义超时等等。
答案 1 :(得分:0)
高级SDK api无法控制通知的消失速度:
https://addons.mozilla.org/en-US/developers/docs/sdk/latest/modules/sdk/notifications.html
Firefox 22+中的这种实现依赖于基础HTML5通知api,而在Firefox和Safari中,具体实现似乎难以关闭通知关闭之前经过的时间:
https://developer.mozilla.org/en-US/docs/WebAPI/Using_Web_Notifications#Creating_a_notification