2014-02-11 3 views
2

XUL 응용 프로그램에서 브라우저 (예 : Firefox, Chrome, IE 등) 창을 열려면 어떻게해야합니까?XUL 응용 프로그램에서 브라우저 창 열기

명백한 window.open(url, "_blank")을 시도했지만, 현재 XUL 창 (!)을 닫는 것만 효과가 있습니다. 구글의 오랜 트롤은 유익한 것도 생산하지 못했다.

내가 원하는 것은 사용자의 기본 브라우저에서 URL을 여는 것입니다. 내 XUL 응용 프로그램에서 URL을 열고 싶지 않습니다.

답변

1

이 방법이 도움이되는지 확신 할 수 없지만 새 탭을 열 때이 방법을 사용합니다.

var win = Components.classes['@mozilla.org/appshell/window-mediator;1'] 
    .getService(Components.interfaces.nsIWindowMediator) 
    .getMostRecentWindow('navigator:browser'); 
win.gBrowser.selectedTab = win.gBrowser.addTab(myUrl); 

열려는 페이지로 myURL을 설정해야합니다.

추가 정보 here

는 또한이 반드시 IE 나 크롬을 열지 않습니다. 나는 :-)

1

이것은 내가 무엇을 한이 IE를 열하지 않는 한 그와 함께 행복 해요 :

function OpenInDefaultBrowser(uri) 
{ 
    if(typeof uri == 'string') 
    { 
     var ioservice = Components.classes["@mozilla.org/network/io-service;1"] 
      .getService(Components.interfaces.nsIIOService); 
     uri = ioservice.newURI(uri, null, null); 
    } 

    // Open URL in user's default browser. 
    var extps = Components.classes["@mozilla.org/uriloader/external-protocol-service;1"] 
     .getService(Components.interfaces.nsIExternalProtocolService); 
    extps.loadURI(uri, null); 
} 
+0

+1 -이 사업을 수행하지만 사용자가 적절한 선택하는 것이 잔소리 프로토콜 (예 : HTTP 또는 HTPPS)에 대한 응용 프로그램. 어쨌든 그 주위에 있니? –