1

Я создаю надстройку SDK Firefox, которая должна читать URL-адрес вкладки и анализировать ее. С этой целью, я слушаю 'ready' события в lib/main.js,Начальная вкладка не запускает открытые, готовые события

var tabs = require('sdk/tabs'); 
tabs.on('open', function(tab){ 
    tab.on('ready', function(tab){ 
    console.log(tab.url); 
    }); 
}); 

, как описано в Mozilla's documentation.

При отладке cfx run это, похоже, хорошо работает для новых вкладок. Закладка, которая уже открыта на cfx run, однако не огонь open и ready события.

В чем причина этого и как его исправить?

+1

Я думаю, вы сделали аддон sdk. sdk использует bootstrap, но на самом деле не классифицируется как аддон загрузки: P – Noitidart

+0

@Noitidart. Вы правы, это с SDK. Все, что вы можете предложить исправить? –

+0

Я не уверен, что я парень-бутстрап, а не sdk :( – Noitidart

ответ

2

Чтобы перечислить все вкладки, которые были открыты в момент загрузки аддона вы могли бы просто использовать tabs объект, который вы получили после того, как требует sdk/tabs

var tabs = require('sdk/tabs'); 
for (var tab of tabs) { 
    console.log(tab.url); 
} 

Так код из вашего примера может быть преобразован в нечто подобном :

Смежные вопросы