#javascript #google-chrome-extension #global-variables
#javascript #google-chrome-расширение #глобальные переменные
Вопрос:
Мне нужно получить доступ к вкладке.Идентификатор окна, созданного моим расширением Chrome.
Вот код, который я использую для создания окна:
chrome.windows.create({
url: fullUrl,
width: w,
height: h,
type: 'normal'
}, function() {
chrome.windows.getCurrent(function(window) {
chrome.tabs.getSelected(window.id,
function (response){
var ourWindow = response.id
alert('created a window with a tab id of: ' ourWindow);
});
});
});
И код, в котором я хотел бы иметь доступ к той переменной ‘ourWindow’, которую мы ранее установили:
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
if(changeInfo.status == "loading") {
if(tabId == ourWindow) {
alert('Holy smokes, this is the window we created!');
}
}
});
Кажется, я не могу получить доступ к переменной, поскольку она была создана вне onUpdated.addListener . Есть идеи?
Ответ №1:
Просто переместите эту переменную в глобальное пространство переменных:
var ourWindow = null;
...
chrome.tabs.getSelected(window.id,
function (response){
ourWindow = response.id;
});