передать переменную в chrome.tabs.onUpdated.addListener () - расширение Chrome - PullRequest
1 голос
/ 28 сентября 2011

Мне нужен доступ к вкладке. Идентификатор окна, созданного моим расширением 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 Ответ

3 голосов
/ 28 сентября 2011

Просто переместите эту переменную в пространство глобальной переменной:

var ourWindow = null;
...
chrome.tabs.getSelected(window.id,
function (response){
    ourWindow = response.id;
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...