hechengjin 发表于 2015-11-15 10:38:03

Mozillar的事件系统


hechengjin 发表于 2016-5-7 16:57:11

本帖最后由 hechengjin 于 2016-5-7 17:02 编辑

outer-window-destroyed
chrome-document-global-created

function close(window) {
let deferred = defer();
let toplevelWindow = getToplevelWindow(window);
let outerId = getOuterId(toplevelWindow);
events.on("outer-window-destroyed", function onclose({subject}) {
    let id = subject.QueryInterface(Ci.nsISupportsPRUint64).data;
    if (id == outerId) {
      events.off("outer-window-destroyed", onclose);
      deferred.resolve();
    }
}, true);
window.close();
return deferred.promise;
}

const events = require('../system/events');


comm-central/mozilla/addon-sdk/source/lib/sdk/system/events.js



\xulrunner\modules\commonjs\sdk\system\events.js


页: [1]
查看完整版本: Mozillar的事件系统