0

「quit-application」オブザーバーを実装しました。

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 に答える