我試圖構建一個Chrome擴展程序,它將檢查(通過「鏈接:URL」Google搜索)哪些網站鏈接到當前打開的網站標籤。但是我的代碼無法正確地將標籤的URL保存到一個變量中。我在stackoverflow上發現了類似的問題(和他們的答案),我知道它可能與js是異步的事實有關,但我無法使其工作。任何提示(s)將非常感激。謝謝!從Chrome選項卡中保存URL的困難(適用於Chrome擴展)
// 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://*/*"
],
對於您的擴展程序,Google的搜索結果可能存在一些麻煩;它會給你不同的結果,具體取決於你在「link:」中是否在冒號後面加空格。 ([Source](http://productforums.google.com/forum/#!topic/websearch/Y-cqCyEBp8Y)) –