Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 5915|回复: 1
打印 上一主题 下一主题

Mozillar的事件系统

[复制链接]

388

主题

602

帖子

2218

积分

金牌会员

Rank: 6Rank: 6

积分
2218
跳转到指定楼层
楼主
发表于 2015-11-15 10:38:03 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

回复

使用道具 举报

388

主题

602

帖子

2218

积分

金牌会员

Rank: 6Rank: 6

积分
2218
沙发
 楼主| 发表于 2016-5-7 16:57:11 | 只看该作者
本帖最后由 hechengjin 于 2016-5-7 17:02 编辑

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

  1. function close(window) {
  2.   let deferred = defer();
  3.   let toplevelWindow = getToplevelWindow(window);
  4.   let outerId = getOuterId(toplevelWindow);
  5.   events.on("outer-window-destroyed", function onclose({subject}) {
  6.     let id = subject.QueryInterface(Ci.nsISupportsPRUint64).data;
  7.     if (id == outerId) {
  8.       events.off("outer-window-destroyed", onclose);
  9.       deferred.resolve();
  10.     }
  11.   }, true);
  12.   window.close();
  13.   return deferred.promise;
  14. }
复制代码


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


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



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


回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-11-1 09:31 , Processed in 0.060493 second(s), 21 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表