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

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

№1120128-01-2017 15:45:25

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1700
UA: Firefox 50.0

Re: Custom Buttons

А подскажите еще пожалуйста, как это код вставить в кнопку на панель навигации.

Выделить код

Код:

function(){ var rspW=620, rspH=420, rspL=parseInt((screen.width/2)-(rspW/2)), rspT=parseInt((screen.height/2)-(rspH/2)); window.open("http://raindrop.io/frame?url="+encodeURIComponent(window.location.href)+"&title="+encodeURIComponent(document.title),"raindrop-save","width="+rspW+",height="+rspH+",resizable=yes,scrollbars=yes,status=false,location=false,toolbar=false,left="+rspL+",top="+rspT) }

Отсутствует

 

№1120228-01-2017 15:58:22

Kiril__777
Участник
 
Группа: Members
Зарегистрирован: 13-07-2009
Сообщений: 393
UA: Firefox 38.0

Re: Custom Buttons

bunda1
Вот так работает. Спасибо. Наконец-то домучали этот момент :)

Отсутствует

 

№1120328-01-2017 17:26:57

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

Re: Custom Buttons

Stakhovsky пишет

А подскажите еще пожалуйста, как это код вставить в кнопку на панель навигации.

Выделить код

Код:

function(){ var rspW=620, rspH=420, rspL=parseInt((screen.width/2)-(rspW/2)), rspT=parseInt((screen.height/2)-(rspH/2)); window.open("http://raindrop.io/frame?url="+encodeURIComponent(window.location.href)+"&title="+encodeURIComponent(document.title),"raindrop-save","width="+rspW+",height="+rspH+",resizable=yes,scrollbars=yes,status=false,location=false,toolbar=false,left="+rspL+",top="+rspT) }
Выделить код

Код:

var rspW=620, rspH=420, rspL=parseInt((screen.width/2)-(rspW/2)), rspT=parseInt((screen.height/2)-(rspH/2)); window.open("http://raindrop.io/frame?url="+encodeURIComponent(window.location.href)+"&title="+encodeURIComponent(document.title),"raindrop-save","width="+rspW+",height="+rspH+",resizable=yes,scrollbars=yes,status=false,location=false,toolbar=false,left="+rspL+",top="+rspT)

Отсутствует

 

№1120428-01-2017 18:48:07

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1700
UA: Firefox 50.0

Re: Custom Buttons

bunda1
блин, я не пойму, почему когда этот код(один и тот же) я вставляю в закладку в поле адресс и запускаю, открывается окно (с адресной строкой)

скрытый текст
daf07c24aee3fce8d6e8c6865b6851d4.png

Когда этот код вставляю в кнопку это же окно уже без адресной строки

скрытый текст
260b9c98c4cca1fe3a11ad79e0a345cf.png

Дело в том, что в окне без адресной строки он срабатывает не полностью, не загружается обложка(картинка)
скрытый текст
ef6f41e4c6631c776142cf8722fbf50d.png

Отсутствует

 

№1120528-01-2017 18:53:13

kanker
Участник
 
Группа: Members
Зарегистрирован: 28-03-2011
Сообщений: 76
UA: Firefox 51.0

Re: Custom Buttons

Помогите с переставшими работать кнопками.
Перестали работать кнопки Добавить страницу в меню закладок и Добавить страницу на панель закладок.
Добавлено 28-01-2017 17:10:31
Команды такие в этих кнопках:

скрытый текст
var bmsvc = Components. classes ["@mozilla.org/browser/nav-bookmarks-service;1"].getService (Components. interfaces. nsINavBookmarksService);
var menuFolder = bmsvc. bookmarksMenuFolder;
PlacesCommandHook. bookmarkCurrentPage (false, menuFolder);
//закомментировать код ниже для того чтоб убрать всплывающее уведомление
var inf="Добавлено: "+content.document.title;
custombuttons.alertSlide("Добавление в меню закладок", inf);

и
скрытый текст
var bmsvc = Components. classes ["@mozilla.org/browser/nav-bookmarks-service;1"].getService (Components. interfaces. nsINavBookmarksService);
var menuFolder = bmsvc. toolbarFolder;
PlacesCommandHook. bookmarkCurrentPage (false, menuFolder);
//закомментировать код ниже для того чтоб убрать всплывающее уведомление
var inf="Добавлено: "+content.document.title;
custombuttons.alertSlide("Добавление на Панель закладок", inf);

Отсутствует

 

№1120628-01-2017 20:05:38

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

Re: Custom Buttons

Кнопка Запуск программы
В FF51 cтарые кнопки работают. Для новых не удается установить путь к программе.

Отсутствует

 

№1120728-01-2017 20:32:51

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

Re: Custom Buttons

ifln пишет

Кнопка Запуск программы
В FF51 cтарые кнопки работают. Для новых не удается установить путь к программе.

Запуск программы( Firefox24+ ) от 28.01.2017.

Добавлено 28-01-2017 20:39:21

Stakhovsky пишет

bunda1
блин, я не пойму, почему когда этот код(один и тот же) я вставляю в закладку в поле адресс и запускаю, открывается окно (с адресной строкой)

:/

Выделить код

Код:

loadURI('javascript:(function(){%20var%20rspW=620,%20rspH=420,%20rspL=parseInt((screen.width/2)-(rspW/2)),%20rspT=parseInt((screen.height/2)-(rspH/2));%20window.open("http://raindrop.io/frame?url="+encodeURIComponent(window.location.href)+"&title="+encodeURIComponent(document.title),"raindrop-save","width="+rspW+",height="+rspH+",resizable=yes,scrollbars=yes,status=false,location=false,toolbar=false,left="+rspL+",top="+rspT)%20})();');

Отредактировано bunda1 (28-01-2017 20:39:21)

Отсутствует

 

№1120828-01-2017 21:11:39

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1700
UA: Firefox 50.0

Re: Custom Buttons

bunda1
О, класс)) Спасибо!:)

Отсутствует

 

№1120928-01-2017 21:14:19

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

Re: Custom Buttons

kanker пишет

Помогите с переставшими работать кнопками.
Перестали работать кнопки Добавить страницу в меню закладок и Добавить страницу на панель закладок.

Добавление в меню закладок:

Выделить код

Код:

PlacesUtils.bookmarks.insertBookmark(2, gBrowser.currentURI, 0, gBrowser.mCurrentTab.label);
custombuttons.alertSlide("Добавление в меню закладок", content.document.title);

Добавление на Панель закладок:

Выделить код

Код:

PlacesUtils.bookmarks.insertBookmark(3, gBrowser.currentURI, -1, gBrowser.mCurrentTab.label);
custombuttons.alertSlide("Добавление на Панель закладок", content.document.title);

Отсутствует

 

№1121028-01-2017 21:42:24

kanker
Участник
 
Группа: Members
Зарегистрирован: 28-03-2011
Сообщений: 76
UA: Firefox 51.0

Re: Custom Buttons

bunda1
Добавил указанные вами новые коды вместо старых через пункт Правая клавиша-Редактировать. Получилось так (ниже скриншоты), но работать не начало (даже после перезапуска).

скрытый текст
de08ed7a81d59f2631941d9f94092e70.jpg
e25a673c2c98f710cacd27848e5f0350.jpg

Еще раньше я сделал попытку решить данную проблему путем отключения цифровой подписи:
https://forum.mozilla-russia.org/viewtopic.php?id=70326

Само расширение после этого удалил и поставил последнюю версию от 27 января этого года.

Отсутствует

 

№1121128-01-2017 21:47:49

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

Re: Custom Buttons

kanker пишет

Само расширение после этого удалил и поставил последнюю версию от 27 января этого года.

https://cloud.mail.ru/public/FYVt/Wgi1kgRi8

Отсутствует

 

№1121228-01-2017 22:42:32

kanker
Участник
 
Группа: Members
Зарегистрирован: 28-03-2011
Сообщений: 76
UA: Firefox 51.0

Re: Custom Buttons

bunda1
Установил, заработало, спасибо громное. Только новые закладки в Меню закладок добавляться стали сверху, выше старых, поверх разделительной линии. Но, думаю, так удобнее-старые внизу, а новые наверху.

Отсутствует

 

№1121328-01-2017 22:43:07

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

Re: Custom Buttons

bunda1 пишет

Запуск программы( Firefox24+ ) от 28.01.2017.

Большое спасибо! Работает.

Отсутствует

 

№1121429-01-2017 21:31:33

Владимир Болотников
Участник
 
Группа: Members
Зарегистрирован: 16-10-2016
Сообщений: 13
UA: Firefox 51.0

Re: Custom Buttons

Перестали работать кнопки открытия сайтов,  не  в новой вкладке не в боковой панели, можно как это поправить?

gBrowser.selectedTab = gBrowser.addTab('https://forum.mozilla-russia.org/viewtopic.php?id=9591&p=last');


openWebPanel("Ru-Board","http://forum.ru-board.com/topic.cgi?forum=35&topic=8857&start=3740");

Отсутствует

 

№1121529-01-2017 21:54:55

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

Re: Custom Buttons

Владимир Болотников пишет

Перестали работать кнопки открытия сайтов,  не  в новой вкладке не в боковой панели, можно как это поправить?
gBrowser.selectedTab = gBrowser.addTab('https://forum.mozilla-russia.org/viewtopic.php?id=9591&p=last');
openWebPanel("Ru-Board","http://forum.ru-board.com/topic.cgi?forum=35&topic=8857&start=3740");

https://forum.mozilla-russia.org/viewto … 87#p729587

Отсутствует

 

№1121629-01-2017 22:13:39

Владимир Болотников
Участник
 
Группа: Members
Зарегистрирован: 16-10-2016
Сообщений: 13
UA: Firefox 51.0

Re: Custom Buttons

bunda1
Спасибо большое.

Отсутствует

 

№1121730-01-2017 21:11:19

Duche
Участник
 
Группа: Members
Зарегистрирован: 07-02-2016
Сообщений: 208
UA: Firefox 38.0

Re: Custom Buttons

Добрый день! Помогите пожалуйста сделать дополнение для любой кнопки , добавляющее новую функцию и пункт в контекстное меню "Удалить  эту страницу из закладок" - удалить открытую из сохранённых закалок вкладку  и автоматически закрыть удаляемую вкладку после выполнения команды "Удалить  эту страницу из закладок" с показом всплывающей подсказки  в верху справа , по образцу кода для добавления в закладки "Добавил в папку " приведённому ниже? Заранее спасибо.

Выделить код

Код:

/ всплывающая подсказка верх ....
     ((url, icon) => PlacesUtils.promiseFaviconLinkUrl(gBrowser.currentURI).then(
      uri => icon = uri.spec, () => icon = "chrome://global/skin/icons/Portrait.png"
      ).then(() => document.getElementById("contentAreaContextMenu").hidePopup() || openDialog(
      url, "", "popup=yes", icon, "Добавил в папку " + folderTitle + ":", docTitle, false, null, 4
      )))("chrome://global/content/alerts/alert.xul");
});

Отредактировано Duche (31-01-2017 11:30:34)

Отсутствует

 

№1121830-01-2017 22:02:44

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 268
UA: Seamonkey 2.46

Re: Custom Buttons

intersk пишет

удалить активную вкладку из папки/подпапки/подпапки (из любого места) с закладками из которой она была открыта и закрыть вкладку?

Выделить код

Код:

var uri = gBrowser.mCurrentTab.linkedBrowser.currentURI;
 for( var id of PlacesUtils.getBookmarksForURI(uri) )
 PlacesUtils.bookmarks.removeItem(id); gBrowser.removeCurrentTab();

А тут как быть, может получится до ума довести:
- открываем влкдку из папки имеющую вид - http://fast-tor.net/torrent/533947/pribytie_arrival-2016-camrip-d
- т.к раздача уже не существует, ссылка превращается в - http://free-rutor.org/d.php (или переадресация если срабатывает)
- а т.к адрес изменился то кнопкой эту закладку удалить не получается.

А так удобно б было, жмак на кнопочку и удалил :)

Отсутствует

 

№1121931-01-2017 08:51:47

bucefal82
Участник
 
Группа: Members
Зарегистрирован: 27-01-2017
Сообщений: 3
UA: Firefox 51.0

Re: Custom Buttons

https://forum.mozilla-russia.org/viewto … 37#p729837
Помогите пожалуйста подправить коды этих кнопок для работы в FF51.

Отредактировано bucefal82 (31-01-2017 08:53:21)

Отсутствует

 

№1122031-01-2017 13:14:44

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

Re: Custom Buttons

bucefal82 пишет

https://forum.mozilla-russia.org/viewto … 37#p729837
Помогите пожалуйста подправить коды этих кнопок для работы в FF51.

24-01-2017 15:55:57

Отсутствует

 

№1122131-01-2017 16:02:01

Northtech
Участник
 
Группа: Members
Зарегистрирован: 16-04-2011
Сообщений: 265
UA: Firefox 52.0

Re: Custom Buttons

Может кто-нибудь поправить эту кнопку? Сломалось копирование полученного результата. :(

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3Edata%3AURI%20Generator%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACLElEQVR42pXTXUtUURTG8f/aZ58zppqjY4YhRgQBWRABRRgoEERlKNJlQn2ICOquIooi6Bt0FRDkOGlAUUBRQoEFmEYEZhSRYG/zojpzzl55cA6lUNFv89zszX5YN0tyIyNUDYdR1KfOoYCwQgSE1RQQMXiel7NhGFLVN9Dfz//I5nJ9VlX53buZ94BgDNT6HvuvjhNYQVAUcA4Obs9w7WQXqg7LGoHvIxIXCCk/HlM4e2w3Ym0yPOduPiMmgBERksRqampWkkoRBAFTF7q5MvSCcgQ3ns9SUYM1kLDW97POuf7IOW5ls6gqAlgDdRZOPwk43ruXu2/zNKfX87VsEH6x8eeu7h4iP8B5HjhFnCNllH0Xxxg4uofpwiKZpjTjj8dI204QIWEVMHX1iDV4bWnM1k14rS2kmjK8qUuz46HQe6iHe7dHeXnpCJ2nRgkjJaZJge8J5XqBnR3Ilja0JUPYkMEEjbxaesC2OxHXu8qAMHn5MGi1QMEAWMC0N2I60pjNzcvZgPpFFj9PsDAxxuvzByhWABUqIZQjqgWKVQUfWGptwGxshCCPzk3hiku42XmiyU9YoBIpiCBGiE/CoooPmMZadP4Dsj7EtK9Dfxi0FCL1Pj4xJWathYQIJnnQLx9hbga0gKldAClAOY+WF4gJwlpGBJtcp58W+RvfegwND+OcI2aMoVQqPZLlhcg71Qan/JERKBQK908MDp5hte8C7AI8/u0bMM0aPwHiYdBiB+lf7gAAAABJRU5ErkJggg%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bvar%20Cc%20%3D%20Components.classes%3B%0Avar%20Ci%20%3D%20Components.interfaces%3B%0A%0A//%20Open%20a%20file%0Afunction%20getFile%28%29%20%7B%0A%20%20const%20nsIFilePicker%20%3D%20Ci.nsIFilePicker%3B%0A%20%20var%20fp%20%3D%20Cc%5B%27@mozilla.org/filepicker%3B1%27%5D.%0A%20%20%20%20%20%20%20%20%20%20%20createInstance%28nsIFilePicker%29%3B%0A%20%20fp.init%28window%2C%20gNavigatorBundle.getString%28%22openFile%22%29%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.modeOpen%29%3B%0A%20%20fp.appendFilters%28nsIFilePicker.filterAll%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.filterText%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.filterImages%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.filterXML%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.filterHTML%29%3B%0A%20%20fp.appendFilter%28%22JavaScript%22%2C%20%22*.js%22%29%3B%0A%20%20fp.appendFilter%28%22CSS%22%2C%20%22*.css%22%29%3B%0A%20%20fp.appendFilter%28%22XUL%22%2C%20%22*.xul%22%29%3B%0A%20%20if%20%28fp.show%28%29%20%3D%3D%20nsIFilePicker.returnCancel%29%20return%3B%0A%0A%20%20var%20localFile%20%3D%20Cc%5B%22@mozilla.org/file/local%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.createInstance%28Ci.nsILocalFile%29%3B%0A%20%20localFile.initWithPath%28fp.file.path%29%3B%0A%20%20return%20localFile%3B%0A%7D%0A%0A//%20Generate%20data%3AURI%20from%20a%20file%0Afunction%20generateDataURI%28aFile%29%20%7B%0A%20%20var%20contentType%20%3D%20Cc%5B%22@mozilla.org/mime%3B1%22%5D.getService%28Ci.nsIMIMEService%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.getTypeFromFile%28aFile%29%3B%0A%20%20var%20inputStream%20%3D%20Cc%5B%22@mozilla.org/network/file-input-stream%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.createInstance%28Ci.nsIFileInputStream%29%3B%0A%20%20inputStream.init%28aFile%2C%200x01%2C%200600%2C%200%29%3B%0A%20%20var%20stream%20%3D%20Cc%5B%22@mozilla.org/binaryinputstream%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.createInstance%28Ci.nsIBinaryInputStream%29%3B%0A%20%20stream.setInputStream%28inputStream%29%3B%0A%20%20var%20encoded%20%3D%20btoa%28stream.readBytes%28stream.available%28%29%29%29%3B%0A%20%20//var%20encoded%20%3D%20escape%28stream.readBytes%28stream.available%28%29%29%3B%0A%20%20return%20%22data%3A%22%20+%20contentType%20+%20%22%3Bbase64%2C%22%20+%20encoded%3B%0A%7D%0A%0A//%20Load%20data%3AURI%20to%20a%20new%20tab%0Afunction%20loadDataURI%28%29%20%7B%0A%20%20var%20file%20%3D%20getFile%28%29%3B%0A%20%20if%20%28%21file%29%20return%3B%0A%20%20var%20dataURI%20%3D%20generateDataURI%28file%29%3B%0A%20%20gBrowser.loadOneTab%28dataURI%2C%20null%2C%20null%2C%20null%2C%20false%29%3B%0A%7D%0A%0A//%20Show%20data%3AURI%20in%20location%20bar%0Afunction%20showDataURI%28%29%20%7B%0A%20%20var%20file%20%3D%20getFile%28%29%3B%0A%20%20if%20%28%21file%29%20return%3B%0A%20%20var%20dataURI%20%3D%20generateDataURI%28file%29%3B%0A%20%20gURLBar.value%20%3D%20dataURI%3B%0A%7D%0A%0A%0Athis.onclick%20%3D%20function%28aEvent%29%20%7B%0A%20%20aEvent.preventDefault%28%29%3B%0A%20%20switch%20%28aEvent.button%29%20%7B%0A%20%20%20%20case%200%3A%20showDataURI%28%29%3B%20break%3B%20//%20left-click%0A%20%20%20%20default%3A%0A%20%20%20%20%20%20let%20x%20%3D%20this.boxObject.x%20+%20%28this.boxObject.width%20%20/%202%29%3B%0A%20%20%20%20%20%20let%20y%20%3D%20this.boxObject.y%20+%20%28this.boxObject.height%20/%202%29%3B%0A%20%20%20%20%20%20document.popupNode%20%3D%20this%3B%0A%20%20%20%20%20%20custombuttons.getCbContextObj%28this%29.oMenu%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.openPopup%28null%2C%20%22after_start%22%2C%20x%2C%20y%2C%20true%2C%20false%29%0A%20%20%7D%0A%7D%0A%0Athis.tooltipText%20%3D%20this.Help%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5Bthis.showDataURI%28%29%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5Bdata%3AURI%20Generator%0ALeft-click%3A%20display%20the%20result%20in%20location%20bar%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Отсутствует

 

№1122231-01-2017 16:39:58

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 268
UA: Seamonkey 2.46

Re: Custom Buttons

fokanik пишет

- а т.к адрес изменился то кнопкой эту закладку удалить не получается.

Выделить код

Код:

this.tooltipText = "Перетащите папку закладок на кнопкy \nЛКМ - NEXT, ПКМ - DEL.";

var i, m;
var stop = true;
var links = [];

this.ondragover = () => false;
this.ondrop = e => {
    var place = e.dataTransfer.getData("text/x-moz-place"), obj;
    if (place && (obj = JSON.parse(place)).type == "text/x-moz-place-container"
        && !("annos" in obj && obj.annos.some(anno => anno.name.startsWith("livemark/") || anno.value == "AllBookmarks"))) {
        var html = e.dataTransfer.getData("text/html");
        var doc = new DOMParser().parseFromString(html, "text/html");
        links = [...doc.querySelectorAll("body > DL > DD > A")].map(a => a.getAttribute("HREF"));
        
        
//?????????????? А здесь есть id - как его взять заранее, чтоб вкладка потом удалилась?     
       }    
  i = 0; m = links.length; stop = false;
  
 run();
}

function run(){
  if(i <= m-1 && stop == false) {
    gBrowser.selectedTab = gBrowser.addTab(links[i]);  i++;
    }
    else {alert("Перетащите папку c закладками на кнопкy."); stop = true;}
  }

this.onclick = function(e){
  if (e.button == 0){
    if(stop == false) gBrowser.removeCurrentTab();
    run(); 
  }
  
  if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey){
    e.preventDefault();
    var uri = gBrowser.mCurrentTab.linkedBrowser.currentURI;
    for( var id of PlacesUtils.getBookmarksForURI(uri) ) PlacesUtils.bookmarks.removeItem(id);
    if(stop == false) gBrowser.removeCurrentTab();
    run();
  }
}

Вопрос в коде: //?????????????? А здесь есть id - как его взять заранее, чтоб вкладка потом безошибочно удалилась?

Отсутствует

 

№1122331-01-2017 17:06:22

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

Re: Custom Buttons

Northtech пишет

Может кто-нибудь поправить эту кнопку? Сломалось копирование полученного результата. :(

:/

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3Edata%3AURI%20Generator%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACLElEQVR42pXTXUtUURTG8f/aZ58zppqjY4YhRgQBWRABRRgoEERlKNJlQn2ICOquIooi6Bt0FRDkOGlAUUBRQoEFmEYEZhSRYG/zojpzzl55cA6lUNFv89zszX5YN0tyIyNUDYdR1KfOoYCwQgSE1RQQMXiel7NhGFLVN9Dfz//I5nJ9VlX53buZ94BgDNT6HvuvjhNYQVAUcA4Obs9w7WQXqg7LGoHvIxIXCCk/HlM4e2w3Ym0yPOduPiMmgBERksRqampWkkoRBAFTF7q5MvSCcgQ3ns9SUYM1kLDW97POuf7IOW5ls6gqAlgDdRZOPwk43ruXu2/zNKfX87VsEH6x8eeu7h4iP8B5HjhFnCNllH0Xxxg4uofpwiKZpjTjj8dI204QIWEVMHX1iDV4bWnM1k14rS2kmjK8qUuz46HQe6iHe7dHeXnpCJ2nRgkjJaZJge8J5XqBnR3Ilja0JUPYkMEEjbxaesC2OxHXu8qAMHn5MGi1QMEAWMC0N2I60pjNzcvZgPpFFj9PsDAxxuvzByhWABUqIZQjqgWKVQUfWGptwGxshCCPzk3hiku42XmiyU9YoBIpiCBGiE/CoooPmMZadP4Dsj7EtK9Dfxi0FCL1Pj4xJWathYQIJnnQLx9hbga0gKldAClAOY+WF4gJwlpGBJtcp58W+RvfegwND+OcI2aMoVQqPZLlhcg71Qan/JERKBQK908MDp5hte8C7AI8/u0bMM0aPwHiYdBiB+lf7gAAAABJRU5ErkJggg%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bvar%20Cc%20%3D%20Components.classes%3B%0Avar%20Ci%20%3D%20Components.interfaces%3B%0A%0A//%20Open%20a%20file%0Afunction%20getFile%28%29%20%7B%0A%20%20const%20nsIFilePicker%20%3D%20Ci.nsIFilePicker%3B%0A%20%20var%20fp%20%3D%20Cc%5B%27@mozilla.org/filepicker%3B1%27%5D.%0A%20%20%20%20%20%20%20%20%20%20%20createInstance%28nsIFilePicker%29%3B%0A%20%20fp.init%28window%2C%20gNavigatorBundle.getString%28%22openFile%22%29%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.modeOpen%29%3B%0A%20%20fp.appendFilters%28nsIFilePicker.filterAll%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.filterText%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.filterImages%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.filterXML%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nsIFilePicker.filterHTML%29%3B%0A%20%20fp.appendFilter%28%22JavaScript%22%2C%20%22*.js%22%29%3B%0A%20%20fp.appendFilter%28%22CSS%22%2C%20%22*.css%22%29%3B%0A%20%20fp.appendFilter%28%22XUL%22%2C%20%22*.xul%22%29%3B%0A%20%20if%20%28fp.show%28%29%20%3D%3D%20nsIFilePicker.returnCancel%29%20return%3B%0A%0A%20%20var%20localFile%20%3D%20Cc%5B%22@mozilla.org/file/local%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.createInstance%28Ci.nsILocalFile%29%3B%0A%20%20localFile.initWithPath%28fp.file.path%29%3B%0A%20%20return%20localFile%3B%0A%7D%0A%0A//%20Generate%20data%3AURI%20from%20a%20file%0Afunction%20generateDataURI%28aFile%29%20%7B%0A%20%20var%20contentType%20%3D%20Cc%5B%22@mozilla.org/mime%3B1%22%5D.getService%28Ci.nsIMIMEService%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.getTypeFromFile%28aFile%29%3B%0A%20%20var%20inputStream%20%3D%20Cc%5B%22@mozilla.org/network/file-input-stream%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.createInstance%28Ci.nsIFileInputStream%29%3B%0A%20%20inputStream.init%28aFile%2C%200x01%2C%200600%2C%200%29%3B%0A%20%20var%20stream%20%3D%20Cc%5B%22@mozilla.org/binaryinputstream%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.createInstance%28Ci.nsIBinaryInputStream%29%3B%0A%20%20stream.setInputStream%28inputStream%29%3B%0A%20%20var%20encoded%20%3D%20btoa%28stream.readBytes%28stream.available%28%29%29%29%3B%0A%20%20//var%20encoded%20%3D%20escape%28stream.readBytes%28stream.available%28%29%29%3B%0A%20%20return%20%22data%3A%22%20+%20contentType%20+%20%22%3Bbase64%2C%22%20+%20encoded%3B%0A%7D%0A%0A//%20Load%20data%3AURI%20to%20a%20new%20tab%0Afunction%20loadDataURI%28%29%20%7B%0A%20%20var%20file%20%3D%20getFile%28%29%3B%0A%20%20if%20%28%21file%29%20return%3B%0A%20%20var%20dataURI%20%3D%20generateDataURI%28file%29%3B%0A%20%20gBrowser.loadOneTab%28dataURI%2C%20null%2C%20null%2C%20null%2C%20false%29%3B%0A%7D%0A%0A//%20Show%20data%3AURI%20in%20location%20bar%0Afunction%20showDataURI%28%29%20%7B%0A%20%20var%20file%20%3D%20getFile%28%29%3B%0A%20%20if%20%28%21file%29%20return%3B%0A%20%20var%20dataURI%20%3D%20generateDataURI%28file%29%3B%0A%20%20gClipboard.write%28dataURI%29%3B%0A%20%20custombuttons.alertSlide%28self.label%2C%20%22%u0421%u043A%u043E%u043F%u0438%u0440%u043E%u0432%u0430%u043B%20%u0444%u0430%u0439%u043B%20%u043A%u0430%u043A%20base64%22%29%3B%0A%7D%0A%0A%0Athis.onclick%20%3D%20function%28aEvent%29%20%7B%0A%20%20aEvent.preventDefault%28%29%3B%0A%20%20switch%20%28aEvent.button%29%20%7B%0A%20%20%20%20case%200%3A%20showDataURI%28%29%3B%20break%3B%20//%20left-click%0A%20%20%20%20default%3A%0A%20%20%20%20%20%20let%20x%20%3D%20this.boxObject.x%20+%20%28this.boxObject.width%20%20/%202%29%3B%0A%20%20%20%20%20%20let%20y%20%3D%20this.boxObject.y%20+%20%28this.boxObject.height%20/%202%29%3B%0A%20%20%20%20%20%20document.popupNode%20%3D%20this%3B%0A%20%20%20%20%20%20custombuttons.getCbContextObj%28this%29.oMenu%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.openPopup%28null%2C%20%22after_start%22%2C%20x%2C%20y%2C%20true%2C%20false%29%0A%20%20%7D%0A%7D%0A%0Athis.tooltipText%20%3D%20this.Help%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5Bthis.showDataURI%28%29%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5Bdata%3AURI%20Generator%0ALeft-click%3A%20display%20the%20result%20in%20location%20bar%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

А что даёт такая кнопка?

Отсутствует

 

№1122431-01-2017 17:55:54

Northtech
Участник
 
Группа: Members
Зарегистрирован: 16-04-2011
Сообщений: 265
UA: Firefox 51.0

Re: Custom Buttons

bunda1 пишет

А что даёт такая кнопка?

Переделывает графические и текстовые файлы в base64 формат.

bunda1 пишет

Код:

Спасибо.
p.s. кнопка стала копировать base64 в буфер обмена, но к сожалению не показывает сам результат кодирования в панели адреса.

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

скрытый текст
xk8biQf.png

Отсутствует

 

№1122531-01-2017 18:01:15

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

Re: Custom Buttons

Northtech пишет

Переделывает графические и текстовые файлы в base64 формат.

Это я сразу понял. Мне интересно куда дальше используют полученный base64.

Добавлено 31-01-2017 18:05:46

Northtech пишет

p.s. кнопка стала копировать base64 в буфер обмена, но к сожалению не показывает сам результат кодирования в панели адреса.
Старая версия показывала (см. ниже), но невозможно было скопировать результат оттуда.

Зачем еще копировать результат из адресной строки, если кнопка сама уже скопировала результат. Я не понимаю в чём тут фишка.

Отредактировано bunda1 (31-01-2017 18:05:46)

Отсутствует

 

Board footer

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