2014-10-31 65 views

回答

3

接受尼克斯回答,但閱讀:

這裏的另一種方式訪問nsIPromptService。並檢查頁面瞭解更多警報:

var {Cu, Ci} = require('chrome'); 
Cu.import('resource://gre/modules/Services.jsm'); 
var doit = Services.prompt.confirm(null, 'title', 'message'); 
if (doit) { 
//he clicked yes 
} 

而不是空的,你可以像Services.wm.getMostRecentWindow(null)窗口對象傳遞它,該窗口上成爲模式

這種方式的好處是,它使用services.jsm所以你沒有加載nsipromptservice你只是得到一個指針,這是首選的方式

+1

這看起來像是一個更好的解決方案。 – 2014-10-31 14:13:14

1

我找到了nsIPromptService,這不正是我想要的:

var chrome = require('chrome'); 
var prompts = chrome.Cc["@mozilla.org/embedcomp/prompt-service;1"].getService(chrome.Ci.nsIPromptService); 
var remove = prompts.confirm(null, 'title', 'message'); 
+0

是'chrome'全球所有sdk插件?還是它必須被開發定義? – Noitidart 2014-10-31 16:32:37

+1

不,我只是沒有使用解構賦值。爲了完整性,我添加了導入。 – 2014-11-02 13:25:44

+0

哦,酷我沒有你可以重組爲'鉻'! Thx for update – Noitidart 2014-11-02 21:04:27