0

我已经实现了“退出应用程序”观察者,

TestApp.ns(function() {
with (TestApp.Lib) {

    //Ci = Components.interfaces;

    theApp.ExitObserver = function() {},

    // Called on uninstall
    theApp.ExitObserver.prototype.observe = function(subject, topic, data){
        if (topic == "quit-application"){
            alert(" exit ");
        }

    };
    }
});

我是我的 Main.js 文件,我将这个 ExitObserver 称为如下所示。

theApp.exitObserver = new theApp.ExitObserver();
observerService.addObserver(theApp.exitObserver, "quit-application", false);

当用户退出浏览器时,我的警报不起作用。这个实现有什么问题吗?

4

1 回答 1

1

我建议先简化你的代码。试试这个:

var observerService = Components.classes["@mozilla.org/observer-service;1"]
                      .getService(Components.interfaces.nsIObserverService);
observerService.addObserver(
    {
        observe: function(subject, topic, data) {
            alert(topic);
        }
    }, "quit-application", false);

恐怕我无法在我的平台上测试这个,所以请原谅我的任何错别字。请让我知道你遇到了什么!

另请参阅此线程

于 2010-12-02T14:46:43.133 回答