我正在尝试修改Chrome的现有扩展程序(可读性)。现在,当您保存具有可读性的页面时,它不会在之后关闭该选项卡。
扩展程序中的代码调用托管在其服务器上的脚本:
(function(){
rdb.chrome.inject_page_script('/bookmarklet/save.js');
}());
然后我修改它以添加代码以删除当前标签,但即使我删除了他们的电话,我也无法让它工作。
我将代码更改为:
(function(){
rdb.chrome.inject_page_script('/bookmarklet/save.js');
chrome.tabs.getSelected( null, function(tab)
{ chrome.tabs.remove(tab.id); return true; });
}());
但它没有关闭标签或正确使用它们的功能。我在功能中单独尝试了关闭选项卡代码而没有调用它,也没有关闭选项卡。
有没有办法修改他们的调用,以便在脚本为页面添加书签后关闭标签?
答案 0 :(得分:3)
我不会再使用chrom chrome.tabs.getSelected
,因为它最近已被弃用。建议您改用chrome.tabs.getCurrent和/或chrome.tabs.query。但是,值得一提的是这两种方法require the tabs permission。
如果不自行查看可读性扩展,很难确定为什么您的代码没有被调用,但我建议您在代码中添加debug(例如console.log('foo')
)语句以确定为什么没有达到该代码。
最后,请确保您关注correct debugging/development procedures,以便更轻松地测试更改。
答案 1 :(得分:1)
尝试
chrome.tabs.getCurrent(function(tab) {
chrome.tabs.remove(tab.id, function(){});
};