Полезная информация

Вы можете получить техническую поддержку и просто поболтать в jabber-конференциях Mozilla Россия: support@conference.mozilla-russia.org — для решения проблем с программами Mozilla, talks@conference.mozilla-russia.org — для общения на свободные темы.

№1192613-07-2017 00:46:53

yup
Участник
 
Группа: Members
Зарегистрирован: 15-04-2016
Сообщений: 887
UA: Seamonkey 2.40

Re: Custom Buttons

Rag
Indomito

Ввиду отсутствия FriGate, запустил в консоли то же самое для DOM Inspector (в слегка оптимизированном варианте):

Выделить код

Код:

AddonManager.getAddonsByTypes(["extension"], function(addons) {
  addons.forEach(function(addon) {
    if(addon.name=="DOM Inspector") addon.userDisabled = !addon.userDisabled;
  })
})

Всё молча отработало, состояние Инспектора переключилось в disabled. [firefox] 52

Добавлено 13-07-2017 00:50:23
И из кнопки Custom Buttons этот код тоже работает.

Отредактировано yup (13-07-2017 00:50:23)

На форуме

 

№1192713-07-2017 01:26:24

Rag
Участник
 
Группа: Members
Зарегистрирован: 06-03-2017
Сообщений: 130
UA: Firefox 54.0

Re: Custom Buttons

yup Я пытался этой кнопкой запустить не запускаемое. Просто нужно было прописать не FriGate а FriGate - разблокировка сайтов
У меня эта кнопка запускает FlashGot именно в коде прописано FlashGot хотя правильное название FlashGot Mass Downloader Вот и FriGate я написал по аналогии с FlashGotом.В общем заработала кнопка.А почему такое с названиями  для меня ну саавсем не понятно.
Спасибо за помощь вам и Indomito

Отредактировано Rag (13-07-2017 01:35:30)

Отсутствует

 

№1192813-07-2017 01:57:10

yup
Участник
 
Группа: Members
Зарегистрирован: 15-04-2016
Сообщений: 887
UA: Seamonkey 2.40

Re: Custom Buttons

Rag пишет:

А почему такое с названиями  для меня ну саавсем не понятно.

Не видя исходного кода, ничего сказать не могу. Но самое разумное: получить в консоль список "официальных" названий вот таким кодом:

Выделить код

Код:

AddonManager.getAddonsByTypes(["extension"], function(addons) {
  addons.forEach(function(addon) { LOG(addon.name) })
})

и пользоваться ими.

А ещё лучше - использовать не addon.name, а addon.id

Отредактировано yup (13-07-2017 02:00:33)

На форуме

 

№1192913-07-2017 02:07:53

Rag
Участник
 
Группа: Members
Зарегистрирован: 06-03-2017
Сообщений: 130
UA: Firefox 54.0

Re: Custom Buttons

yup
Вот теперь понятно. В консоли [Custom Buttons: id: custombuttons-button38@code, line: 3, name: ]
friGate - разблокировка сайтов.
[Custom Buttons: id: custombuttons-button7@code, line: 3, name: ]
FlashGot

Отсутствует

 

№1193013-07-2017 12:55:37

yup
Участник
 
Группа: Members
Зарегистрирован: 15-04-2016
Сообщений: 887
UA: Seamonkey 2.40

Re: Custom Buttons

Возвращаясь к напечатанному...

Подскажите, почему в результате выполнения такого кода ничего не выводится:

Выделить код

Код:

var list = "";
AddonManager.getAddonsByTypes(["extension"], function(addons) {
  addons.forEach(function(addon) {
    list += addon.name + " : " + (addon.userDisabled ? "disabled" : "enabled") + "\n";
  });
});
LOG(list);

Хотя при выполнении такой его модификации:

Выделить код

Код:

var list = "";
AddonManager.getAddonsByTypes(["extension"], function(addons) {
  addons.forEach(function(addon) {
    list += addon.name + " : " + (addon.userDisabled ? "disabled" : "enabled") + "\n";
    LOG(list);
  });
});

накапливаемые результаты вполне себе выводятся.

Контекст же (область видимости имён) внутри накапливающей функции должен быть вложенным в тот, где переменная list объявлена...

Отредактировано yup (13-07-2017 13:05:09)

На форуме

 

№1193113-07-2017 14:07:10

okkamas_knife
We are the Borg.       Resistance is futile.
 
Группа: Members
Зарегистрирован: 21-10-2009
Сообщений: 8958
UA: Seamonkey 2.14

Re: Custom Buttons

yup пишет:
Контекст же (область видимости имён) внутри накапливающей функции должен быть вложенным в тот, где переменная list объявлена...

нифига.

Выделить код

Код:

var list = "";
AddonManager.getAddonsByTypes(["extension"], function(addons) {
  addons.forEach(function(addon) {
    list += addon.name + " : " + (addon.userDisabled ? "disabled" : "enabled") + "\n";
  });
});
alert(list);// фига
alert(list);// данные

Отсутствует

 

№1193213-07-2017 14:16:29

yup
Участник
 
Группа: Members
Зарегистрирован: 15-04-2016
Сообщений: 887
UA: Seamonkey 2.40

Re: Custom Buttons

okkamas_knife пишет:

нифига.

Выделить код

Код:

...
alert(list);// фига
alert(list);// данные

М-м-м. Ничего не понимаю. Запускаю этот код с alert() - на втором получаю искомый список. Что, переменная list в первом - не та же, что во втором?
Ладно, меняю alert на LOG и получаю в консоли два пустых вывода.

Закрадывается ощущение, что в getAddonsByTypes() function() вызывается асинхронно и к моменту вызова LOG()-ов посчитана ещё быть не может никак, а вот между вызовами alert() - вполне.

Добавлено 13-07-2017 14:24:50
Проверил - так и есть. Вариант:

Выделить код

Код:

var list = "123\n";
AddonManager.getAddonsByTypes(["extension"], function(addons) {
  list = "";
  addons.forEach(function(addon) {
    list += addon.name + "\n";
    LOG(list);
  });
});
LOG(list);

сначала печатает "123" и только потом - имена расширений.

Отредактировано yup (13-07-2017 14:30:24)

На форуме

 

№1193313-07-2017 17:35:17

okkamas_knife
We are the Borg.       Resistance is futile.
 
Группа: Members
Зарегистрирован: 21-10-2009
Сообщений: 8958
UA: Seamonkey 2.14

Re: Custom Buttons

yup пишет: асинхронно

именно
и видимость нипричём ибо
function инициализация_конкретной_кнопки(){
var list тут глобальная переменная(в пределах этой функции конечно) и соответственно гетаддонс её прекрасно видит как и любые другие функции внутри
}


Отсутствует

 

№1193416-07-2017 18:38:35

unter_officer
Участник
 
Группа: Members
Откуда: Санкт-Петербург
Зарегистрирован: 27-03-2011
Сообщений: 17
UA: Firefox 39.0

Re: Custom Buttons

Здравствуйте!
Если не сложно, сделайте пожалуйста кнопку: "Экспорт закладок в HTML-файл / Импорт закладок из HTML-файла".

Отсутствует

 

№1193517-07-2017 23:39:39

ifln
Участник
 
Группа: Members
Зарегистрирован: 20-09-2013
Сообщений: 167
UA: Firefox 52.0

Re: Custom Buttons

Нужна кнопка вроде Открыть видео в PotPlayerMini. Только взаимодействовать она должна не с плеером, а с плейлистом 1.m3u, расположенным в профиле. Левый клик в меню добавляет адрес медиафайла в конец плейлиста с новой строки.
Правый клик открывает плейлист в ассоциированной программе.

unter_officer
StRL+SHIFT+B > Import and Backup
Не подойдет?

Отредактировано ifln (17-07-2017 23:40:47)

Отсутствует

 

№1193618-07-2017 01:54:57

unter_officer
Участник
 
Группа: Members
Откуда: Санкт-Петербург
Зарегистрирован: 27-03-2011
Сообщений: 17
UA: Firefox 39.0

Re: Custom Buttons

ifln пишет:

StRL+SHIFT+B > Import and Backup. Не подойдет?

Если бы подходило, то не просил бы сделать кнопочку.

Отредактировано unter_officer (18-07-2017 01:55:37)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2011 Mozilla Russia
Язык отображения форума: [Русский] [English]