アクティブなタブで現在開いているサイトにリンクしているサイトを (「link:URL」Google 検索を介して) チェックする Chrome 拡張機能を構築しようとしています。しかし、私のコードでは、タブの URL を変数に正しく保存できません。ここで、stackoverflow で同様の質問 (およびその回答) を見つけました。js が非同期であるという事実に関係している可能性があることは理解していますが、機能させることができませんでした。どんなヒントでも大歓迎です。ありがとう!
// this is the part that doesn't work
chrome.tabs.query({'active': true}, function (tabs) {
var query = tabs[0].url;
});
// this is the part that works just fine
chrome.browserAction.onClicked.addListener(function(activeTab)
{
var stemURL = "http://www.google.com/#q=link:";
chrome.tabs.create({ url: (stemURL + query) });
});
マニフェストでアクセス許可を設定する方法は次のとおりです。これは正しいはずです
"permissions": [
"tabs", "http://*/*", "https://*/*"
],