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

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№5116-07-2017 05:04:47

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 459
UA: Firefox 54.0
Веб-сайт

Re: [CB] Автовыделение ++

1. У меня не работает Services.scriptloader.loadSubScript(url, cbs) в функции saveTextToHelp(text) при занесении слова в Справку
Я поставил два алерта: перед Services.scriptloader.loadSubScript(url, cbs) и после. Первый отрабатывает, а второй - нет.

скрытый текст

Выделить код

Код:

function saveTextToHelp(text) {
   var dir = Services.dirsvc.get("ProfD", Ci.nsIFile);
   dir.initWithPath(dir.path + "\\extensions\\custombuttons@xsms.org\\components\\CustomButtonsService.js");
   var url = Services.io.newFileURI(dir).spec, cbs = {};
   alert(0);
   Services.scriptloader.loadSubScript(url, cbs);
   alert(1);
   var AO = new cbs.AppObject(), btn = AO.getButton(_id);

   self.setAttribute("Help", text);
   btn.setAttribute("Help", text);
   AO.overlay.saveOverlayToProfile();   
};


Имеется ввиду код из №49
2. И ещё у меня вопрос: как можно заменить сами найденные слова на другие? Например, на одно и то же "куку"?

Добавлено 16-07-2017 05:34:06

bunda1 пишет:

Dobrov пишет:

а если будет добавлено 100 слов, то и цветов столько же надо?

Ну как бы да. Могу сделать так что бы цвета повторялись.

Можно сделать по модулю:

var color = colors[highlightText.indexOf(str)%colors.length]

Отредактировано difabor (16-07-2017 05:34:06)


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№5226-07-2017 12:57:37

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4584
UA: Firefox 24.0

Re: [CB] Автовыделение ++

difabor пишет:

1. У меня не работает Services.scriptloader.loadSubScript(url, cbs) в функции saveTextToHelp(text) при занесении слова в Справку
Я поставил два алерта: перед Services.scriptloader.loadSubScript(url, cbs) и после. Первый отрабатывает, а второй - нет.

Я проверил и всё работает:

Выделить код

Код:

function saveTextToHelp(text) {
   var dir = Services.dirsvc.get("ProfD", Ci.nsIFile);
   dir.initWithPath(dir.path + "\\extensions\\custombuttons@xsms.org\\components\\CustomButtonsService.js");
   var url = Services.io.newFileURI(dir).spec, cbs = {};
   Services.scriptloader.loadSubScript(url, cbs);
   var AO = new cbs.AppObject(), btn = AO.getButton(_id);

   self.setAttribute("Help", text);
   btn.setAttribute("Help", text);
   AO.overlay.saveOverlayToProfile();   
};
saveTextToHelp('kkkkllhjhhjjnhjjkkkk');

difabor пишет:

2. И ещё у меня вопрос: как можно заменить сами найденные слова на другие? Например, на одно и то же "куку"?

Надо получить текст текстового узла на странице, изменить в тексте ножное слово и переписать текст.

Отредактировано bunda1 (26-07-2017 13:09:03)

Отсутствует

 

№5326-07-2017 13:52:45

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 459
UA: Firefox 54.0
Веб-сайт

Re: [CB] Автовыделение ++

bunda1 пишет:

difabor пишет:

1. У меня не работает Services.scriptloader.loadSubScript(url, cbs) в функции saveTextToHelp(text) при занесении слова в Справку
Я поставил два алерта: перед Services.scriptloader.loadSubScript(url, cbs) и после. Первый отрабатывает, а второй - нет.

Я проверил и всё работает:

Выделить код

Код:

function saveTextToHelp(text) {
   var dir = Services.dirsvc.get("ProfD", Ci.nsIFile);
   dir.initWithPath(dir.path + "\\extensions\\custombuttons@xsms.org\\components\\CustomButtonsService.js");
   var url = Services.io.newFileURI(dir).spec, cbs = {};
   Services.scriptloader.loadSubScript(url, cbs);
   var AO = new cbs.AppObject(), btn = AO.getButton(_id);

   self.setAttribute("Help", text);
   btn.setAttribute("Help", text);
   AO.overlay.saveOverlayToProfile();   
};
saveTextToHelp('kkkkllhjhhjjnhjjkkkk');

У меня этот код не работает :(
Я создал специальную кнопку, где поместил только этот код в секцию "Code" - не работает :( ...
Может у меня не та версия  Сustom Buttons стоит?
Где взять последнюю версию  Сustom Buttons?

Отредактировано difabor (26-07-2017 13:58:40)


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№5426-07-2017 21:18:04

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4584
UA: Firefox 24.0

Re: [CB] Автовыделение ++

difabor пишет:

Я создал специальную кнопку, где поместил только этот код в секцию "Code" - не работает :( ...
Может у меня не та версия  Сustom Buttons стоит?
Где взять последнюю версию  Сustom Buttons?

Custom Buttons • View topic - [Signed fixed extension attached] CB broken on Firefox 48+

Отсутствует

 

№5526-07-2017 23:10:37

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 459
UA: Firefox 54.0
Веб-сайт

Re: [CB] Автовыделение ++

bunda1 пишет:

difabor пишет:

Я создал специальную кнопку, где поместил только этот код в секцию "Code" - не работает :( ...
Может у меня не та версия  Сustom Buttons стоит?
Где взять последнюю версию  Сustom Buttons?

Custom Buttons • View topic - [Signed fixed extension attached] CB broken on Firefox 48+

Поставил последнюю: Custom Buttons • View topic - [Signed fixed extension attached] CB broken on Firefox 48+ от Infocatcher, всё равно не помогает... :(
В Ваш код я вставил два алерта:

Выделить код

Код:

function saveTextToHelp(text) {
   var dir = Services.dirsvc.get("ProfD", Ci.nsIFile);
   dir.initWithPath(dir.path + "\\extensions\\custombuttons@xsms.org\\components\\CustomButtonsService.js");
   var url = Services.io.newFileURI(dir).spec, cbs = {};
   alert(1) // --> срабатывает
   Services.scriptloader.loadSubScript(url, cbs);
   alert(2) // --> не срабатывает
   var AO = new cbs.AppObject(), btn = AO.getButton(_id);

   self.setAttribute("Help", text);
   btn.setAttribute("Help", text);
   AO.overlay.saveOverlayToProfile();   
};
saveTextToHelp('kkkkllhjhhjjnhjjkkkk');

Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№5626-07-2017 23:41:51

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

Re: [CB] Автовыделение ++

difabor пишет:

В Ваш код я вставил два алерта:

Вызвать консоль браузера (Ctrl-Shift-J) и смотреть, что в неё в этот момент пишется.

Отсутствует

 

№5727-07-2017 03:37:35

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 459
UA: Firefox 54.0
Веб-сайт

Re: [CB] Автовыделение ++

yup пишет:

difabor пишет:

В Ваш код я вставил два алерта:

Вызвать консоль браузера (Ctrl-Shift-J) и смотреть, что в неё в этот момент пишется.

Большое спасибо! Нашёл причину!
В коде кнопки указано:
dir.initWithPath(dir.path + "\\extensions\\custombuttons@xsms.org\\components\\CustomButtonsService.js");
А мне надо было поменять это на:
dir.initWithPath(dir.path + "\\extensions\\custombuttons-signed@infocatcher\\components\\CustomButtonsService.js");

Консоль мне это объяснила!
Ещё раз большое спасибо!

Отредактировано difabor (27-07-2017 03:40:18)


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№5827-07-2017 11:11:39

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4584
UA: Firefox 24.0

Re: [CB] Автовыделение ++

difabor пишет:

В коде кнопки указано:
dir.initWithPath(dir.path + "\\extensions\\custombuttons@xsms.org\\components\\CustomButtonsService.js");
А мне надо было поменять это на:
dir.initWithPath(dir.path + "\\extensions\\custombuttons-signed@infocatcher\\components\\CustomButtonsService.js");

Спасибо, эта важная информация.

Отсутствует

 

Board footer

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