如何从XULRunner中的XUL应用程序启动网页?

时间:2011-06-01 21:08:37

标签: javascript xul xpcom xulrunner

以下按钮处理程序的XULRunner等价物是什么?

function launch_page() {
    var win = Components.classes['@mozilla.org/appshell/window-mediator;1']
        .getService(Components.interfaces.nsIWindowMediator)
        .getMostRecentWindow('navigator:browser');
    win.openUILinkIn('http://www.google.com', 'window');
}

这在使用XULRunner --install-app ./foo.xpi安装到Program Files的XUL应用程序中没有任何作用。

我的XUL应用程序是否有办法启动用户的默认浏览器以在按钮单击时显示网页?

1 个答案:

答案 0 :(得分:1)

This现在有效:

// first construct an nsIURI object using the ioservice
var ioservice = Components.classes["@mozilla.org/network/io-service;1"]
    .getService(Components.interfaces.nsIIOService);

var uriToOpen = ioservice.newURI("http://www.google.com/", null, null);

var extps = Components.classes["@mozilla.org/uriloader/external-protocol-service;1"]
    .getService(Components.interfaces.nsIExternalProtocolService);

// now, open it!
extps.loadURI(uriToOpen, null);

有人有更标准的方法吗?