检查选项卡是否存在并使其处于活动状态;否则创建它
Check if tab exists and make it active; otherwise create it
>我正在尝试查看选项卡"http://google.com"是否存在。 如果是这样,那么我想使其成为活动页面。 否则,标签"http://google.com"不存在,我想创建它。
回合.js
chrome.runtime.onMessage.addListener(function(response, sender, sendResponse){
chrome.tabs.create({'url': 'http://google.com'}, function(tab) {
alert('Tab Created ' + tab.id);
var oms = tab.id;
chrome.tabs.update(oms, {url:"http://en.wikipedia.org"});
});
});
这将创建网页,获取tabid
并将tabid
设置为变量。
您当前的尝试似乎是尝试使用Google创建一个标签,然后将其导航到维基百科。 这与你的初始段落不一致。 相反,我认为您想要类似于以下内容的内容:
chrome.runtime.onMessage.addListener(function(response, sender, sendResponse){
chrome.tabs.query({'url': 'http://google.com'}, function(tabs) {
if ( tabs.length > 0 ) {
chrome.tabs.update(tabs[0].id,{'active':true});
} else {
chrome.tabs.create({'url':'http://google.com'});
}
});
});
请注意,这不会找到 http://www.google.com 或 http://google.com/otherstuff。 您可能需要使用匹配模式。
您评论说,在将选项卡更新为selected
时遇到问题。 文档说selected
已被弃用,取而代之的是highlighted
。 这也暗示了可能还发生了什么:highlighted
选项卡不一定处于活动状态(具体来说,您可以highlighted
多个选项卡(。
相关文章:
- 在Angular 2中布线期间保持零部件处于活动状态
- 如何使bxslider仅在移动视图中处于活动状态
- 悬停下拉菜单即使在鼠标移出后也保持活动状态
- 使用纯javascript而非jquery使所选选项卡处于活动状态并保持非活动状态
- 我如何为列出的选项卡元素编写一个Protractor测试,它会检查它是否's是否处于活动状态
- 返回上一页时,Javascript仍处于活动状态
- Angular+bootstrap ui,检查当前选项卡是否已处于活动状态
- 按钮处于活动状态,焦点无法在Mac FireFox上工作
- 禁用永久活动状态
- 单击我网站中的链接时打开新选项卡,保持当前选项卡处于活动状态
- 网页在等待 AJAX 响应时变为非活动状态
- 广告拦截处于活动状态,然后不要打开超链接到新标签
- 如何创建至少 1 个框处于活动状态的复选框列表
- 如何使按钮具有 :活动状态 1 秒
- JQuery UI 1.11 将选项卡设置为活动状态
- 如何获取链接以保持活动状态
- 限制 .live() 函数在 JavaScript 中变为活动状态的次数
- 创建一个复选框按钮的散列,这些按钮在单击时在Twitter Bootstrap Button组中处于活动状态
- Angularjs :动态创建的选项卡不会处于活动状态/选中状态
- 检查选项卡是否存在并使其处于活动状态;否则创建它