1
在我的firefox sdk插件中,我想从我的数据目录中使用自定义网页作为我的设置/关于页面。如何在特定的选项卡上保留选项卡?
但是我在标签上留下了一些麻烦!
所以我有一个按钮,调用OptionsPanel()
函数来打开我的网页在一个新标签。现在,我希望如果用户忘记了该选项卡,并且再次按下该按钮,它会激活已打开的设置选项卡。这意味着我需要知道该选项卡已打开,并且如果它处于打开状态,则需要能够切换到该选项卡,如果尚未打开,请将其打开。
这是我到目前为止,但它不工作;它只是总是打开一个新标签。我甚至不知道我是否在咆哮着正确的树。
const tabs = require("sdk/tabs");
var optionsTab;
function OptionsPanel(){
var opsTab = GetTabByID(optionsTab.id);
if(opsTab == null){
tabs.open(data.url("OptionsPanel.html"));
optionsTab.id = tabs.tab.id; <======errors out as undefined
}else{
opsTab.activate();
}
}
//return a handle to the tab that matches specified tab id
function GetTabByID(whatid){
for(let thistab of tabs){
if(thistab.id = whatid){
return thistab;
}
}
return null;
}
所以,这里是我的目标:
- 打开我的页面在一个新的标签,如果它是尚未打开。
- 如果该选项卡已经打开,然后切换到该选项卡。
- 如果页面在浏览器加载时打开,则如果用户按下选项按钮,则准备切换到该选项卡。
选项卡模块的可能性“选项卡实例代表一个打开的选项卡。”正如我在标签实用工具文档中所看到的:https://developer.mozilla.org/en-US/Add-ons/SDK/High-Level_APIs/tabs#Tab,但我觉得这有点令人困惑,并且没有足够的例子为了我。 – bgmCoder
感谢您的时间,minj;并指出'=='。我习惯于在Autohotkey中编码。 – bgmCoder