0

我正在开发一个项目,我打算在同一个网站中打开多个网页,但不使用。我曾尝试过使用<iframes>,但通常最终会导致浏览器UI锁定网页,所以我一直在寻找替代品。谷歌浏览器扩展和NPAPI/FireBreath嵌入网页

我开发了一个小的谷歌Chrome扩展,而不是打开网页,我打开chrome.windows在我想要的位置,它工作正常,但我不想要任何像他们身边的用户界面像标题栏和按钮一种“全屏”的尺寸我定义。

chrome.windows.create({ url: app.src, left: wleft, top: wtop, width: wwidth, height: wheight, focused: false, type: "popup" }, function(tab) { 
    self.windowid = tab.id; 
    console.log('Window ID is: ' + self.windowid); 
    //chrome.windows.update(tab.id, { focused: true, state: "maximized" }) 
}); 

虽然寻找到Chrome扩展API,我读一些有关NPAPI和多一点的研究,我发现约FireBreath。因为我从来没有与此没有任何东西我怀疑是否有任何方式或可能性,通过开发插件NPAPI/firebreath做以下的1:

  1. 当用户打开带有浏览器扩展程序的窗口,不知何故删除从它的UI?
  2. 随着插件的开发,并有一个index.html与3 <object id="plugin"...>而不是,并在这3个对象嵌入索引,让他们打开网页与我定义的网址,并使其更改URL后X在JavaScript上设置的时间?

这是所有的假设,idk如果我说什么愚蠢的关于可能性与npapi这样做,或者如果我应该看看别的地方。

在此先感谢。

+0

如果您目前无法在Chrome中创建UI较少的窗口,请尝试使用功能请求? – 2013-05-17 00:40:46

回答

1

基本上答案是否定的,你不能做任何。

但是,为了更准确,您可以做#2,但这是一项大量工作,可能无法满足您的期望。在npapi插件中加载html页面的唯一方法是将某种网页浏览器嵌入到该插件中; FireBreath有一个undocumented library called WebView,它可以帮你做到这一点,但是它在Windows和Mac上使用IE引擎,它使用了大量的黑客手段使其工作,最终只在某些情况下才能正常工作。

您的#1无法做到任何一致或可靠; npapi插件对浏览器本身一无所知,只有页面。有可能使用Windows API从本质上入侵浏览器窗口并改变内容,但它会非常脆弱并且特定于该版本的Chrome;如果事情稍后改变,它就会破裂。

+0

谢谢你清理我的疑惑。 – mpc 2013-05-08 18:04:33