2011-12-23 2 views
-1

У меня есть проблема в дополнении firefox/jetpack.Firefox Add-on Удалить прослушиватель событий

Там его слушатель события:

tab.on('deactivate', cleardata); 

Мне нужно удалить слушателя Деактивировать события.

Я думаю, что мне нужно что-то подобное

tab.removeListener('deactivate', cleardata); 

Но что-то worng в коде, не остановить слушателя.

Grettings, Маркос.

ответ

0

Следующий фрагмент кода работает, как ожидается, для меня:

var count = 0; 

function myListener(tab) { 
    count++; 
    console.log("Event number " + count); 
    if (count == 3) 
    { 
     console.log("Removing listener after third event"); 
     tab.removeListener('deactivate', myListener); 
    } 
} 

function setupTabTest(tab) { 
    tab.on('deactivate', myListener); 
} 

(Вы должны вызвать setupTabTest с некоторым существующим объектом Tab.)

ли этот код работать для вас? Если да, пожалуйста, предоставьте дополнительную информацию о части вашего кода, которая не работает. Попытайтесь уменьшить его до простейшего примера, который иллюстрирует ошибку.

+0

Да, проблема ... 'votetab.on ('deactivate', end); votetab.removeListener ('deactivate', end); ' Это не работа, возможно, неправильное истолкование деактивирующего события. Какое событие деактивирует событие Exacly? –

+0

@Marcos [Деактивировать событие] (https://addons.mozilla.org/en-US/developers/docs/sdk/1.2/packages/addon-kit/docs/tabs.html#deactivate) запускается, когда вкладка перестает быть активной вкладкой (например, вы переключаетесь на другую вкладку). Вам нужно будет предоставить больше информации, потому что я не могу воспроизвести вашу проблему. Попробуйте запустить и понять код, который я написал, и посмотреть, есть ли что-то, что вы делаете по-другому. – tcovo

+0

Вы хотите полный код? –

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