【发布时间】:2015-01-03 03:26:20
【问题描述】:
构建一个 Firefox 扩展,我需要在用户执行操作后保存一个值。我需要这个值一直持续到 Firefox 重新启动。我正在使用此代码进行测试。
Components.utils.import("chrome://***/content/symbols.jsm");
window.addEventListener("load", function() { myExtension.init() }, false);
var myExtension = {
init: function() {
document.addEventListener("DOMContentLoaded", this.onPageLoad, false);
},
onPageLoad: function() {
if (blocked == 0) {
alert("OFF");
}
else {
alert("ON");
}
blocked = 1;
}
}
symbols.jsm
var EXPORTED_SYMBOLS = ["blocked"];
var blocked = 0;
使用此代码启动 Firefox 并显示“关闭”,因为尚未设置变量。(按预期)导航到不同的页面,甚至打开新标签页都会显示“打开”窗口打开,变量丢失并显示“OFF”。如何使变量值保持不变,直到所有 Firefox 窗口都关闭(重新启动)。
我不想在 about:config 的首选项中设置它,因为用户可以轻松更改它。
【问题讨论】:
标签: javascript variables firefox firefox-addon