通过火狐扩展在特定位置打开选项卡
Open Tab in a Specific Position by Firefox extension
比如说,Firefox浏览器窗口中有10个选项卡。
如何在第二个标签之后通过 Firefox 扩展代码添加选项卡?
gBrowser.addTab
方法仅追加到选项卡列表。
没有简单、直接的方法可以做你想做的事。如果您真的想直接在特定索引处打开选项卡,那么您可以查看gBrowser.addTab()
的代码和gBrowser.moveTabTo()
的代码;复制它们并修改它们以执行您想要的操作。请注意,此代码采用 JavaScript 的 XML 表示形式。因此,如果要使用它,则需要重新格式化它。
但是,执行此操作的简单方法是打开选项卡, gBrowser.addTab()
. 然后,将其移动到所需的索引,gBrowser.moveTabTo()
.
以下代码将执行您想要的操作。当我将此代码附加到按钮时,选项卡在视觉上显示为在指定的索引处打开。它没有首先在选项卡的末尾打开,然后似乎在移动。执行此操作、添加然后移动与实际在指定索引处添加选项卡之间没有明显的区别。
function handleButtonCommandEvent(event) {
let window = event.view;
//Create the window variable if it does not exist. It should
// already be defined from event.view.
// This should work from any Firefox context.
if (typeof window === "undefined") {
//If there is no window defined, get the most recent.
var window=Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interfaces.nsIWindowMediator)
.getMostRecentWindow("navigator:browser");
}
//Test addTabAtIndex()
addTabAtIndexInWindow(window, 2, "http://www.ebay.com/")
}
/**
* Open a tab in specified window at index.
*/
function addTabAtIndexInWindow(window, index, URL, referrerURI, charset, postData,
owner, allowThirdPartyFixup ) {
//Get the gBrowser for the specified window
let winGBrowser = window.gBrowser;
//Open a new tab:
let newTab = winGBrowser.addTab(URL, referrerURI, charset, postData,
owner, allowThirdPartyFixup );
//Immediately move it to the index desired:
winGBrowser.moveTabTo(newTab,index);
}
相关文章:
- 当选择值x时,Javascript需要在正确的位置显示文本区域,从而循环通过具有选择选项的表单
- 更改Chrome扩展中的选项卡位置
- 谷歌地图点击链接/选项卡更改标记位置地图
- 保留选项后的滚动位置(单击时)
- 为什么首先单击文档空白处的任何位置启动代码,而不是单击超链接,以及为什么打开了太多选项卡
- 在jquery插件中定义选项的正确位置
- 从Web应用程序发送地理位置,即使选项卡不在焦点上
- Angularjs select:如何获取所选项目的位置并设置默认选择
- 使用 JavaScript 更改选项的位置
- 通过火狐扩展在特定位置打开选项卡
- 使用页面上其他位置的链接激活选项卡
- 根据滚动位置更新选择菜单中的选定选项
- 画布的奇怪行为 上下文变量定义位置导致选项卡处于非活动状态时画布呈现冻结
- 如何检测选项卡的激活位置
- 保存文件选项,用于将html文件保存在系统中的给定位置
- 在 Firefox 中,当选择具有位置和 z 索引时,为什么更改事件不会在选项卡上触发
- 谷歌地图API v3可拖动光标选项,如位置
- 窗口位置 在新选项卡中打开
- 需要找到我的单选选项已检查值更改的位置
- 谷歌标记位置选项:从谷歌融合表中检索纬度和经度