我注意到安装后的某些Firefox扩展程序会在您重新启动浏览器后打开一个页面,例如StumbleUpon toolbar。
这对于显示更新说明并向用户提供一些教程类型信息非常有用。
如果用户在安装后第一次重启浏览器时如何在Firefox插件中打开新页面?
答案 0 :(得分:5)
虽然可能有更好的方法,但我不知道... 您可以使用首选项系统来跟踪它是否是第一次运行/更新
检查首选项是否存在,如果不存在,请打开页面,使用当前扩展版本号创建pref。 如果存在首选项,请根据当前扩展版本号进行检查,如果它们不同,则假定它是更新并打开页面。 (假设您希望每次更新时都打开页面)
var prefs = Components.classes["@mozilla.org/preferences-service;1"]
.getService(Components.interfaces.nsIPrefService);
prefs.QueryInterface(Components.interfaces.nsIPrefBranch2);
if ((prefs.getPrefType("extensions.yourextensionhere.yourprerference") == PREF_INVALID)
|| (prefs.getCharPref("extensions.yourextensionhere.yourprerference") != this.version)) {
//open page and...
prefs.setCharPref("extensions.yourextensionhere.yourprerference",this.version)
}
编辑..版本检查使用==而不是!=因为它应该有
答案 1 :(得分:0)
我没有直接使用firefox扩展,但我会想象在持久内存中存储标志(布尔值)的行(但是你存储用户首选项)。当浏览器在安装后第一次启动时,将不会设置标志,因此您将显示帮助页面并设置标志。下次firefox重新启动时,该标志已经设置好,因此您无法打开帮助页面。
如果您希望每次更新扩展时显示页面,则存储版本而不是布尔值,并在每次启动时检查当前版本是否大于存储版本的版本。