а для сохранения юзай DTA очень удобная штука - там есть настраиваемые фильтры так что сохранение нужного можно в два клика организовать.
okkamas_knife , Штука то удобная, но там же нельзя визуально сопоставить линк с картинкой - так как это делается в "Информация о странице"
Отредактировано Крошка Ру (21-06-2012 19:29:01)
Отсутствует
Знатоки CB и JavaScript помогите пожалуйста еще раз
Я нашел пример интересного всплывающего окна, которое грузит в себя HTML-страничку, но не могу понять как сделать так чтобы такое небольшое окно появлялось при нажатии на кнопку кнопку Custom Buttons
http://kpa-ing.ru/Different/Vsplyv_okno.htm
Думаю такая кнопка и другим бы очень пригодилась, ведь в рамках такого окошка можно реализовать много чего интересного
Не нашёл комментария - ответа , а всё же хотелось бы узнать -возможно ли такое средствами CB ?
Отсутствует
Можно кнопочку, добавляющую в контекстное меню браузера пункт "Открыть страницу в другом профиле Firefox" ?
Отредактировано Крошка Ру (23-06-2012 09:18:07)
Отсутствует
http://kpa-ing.ru/Different/Vsplyv_okno.htm
Не нашёл комментария - ответа , а всё же хотелось бы узнать -возможно ли такое средствами CB ?
Думаю такая кнопка и другим бы очень пригодилась, ведь в рамках такого окошка можно реализовать много чего интересного
Что ты имеешь в виду ?
Отредактировано bunda1 (23-06-2012 08:18:45)
Отсутствует
Что ты имеешь в виду ?
bunda1 , Чтобы из кнопки появлялось popup - окошко
отображающее вставленный в него html - код
Отсутствует
Крошка Ру можно например как дополнение к кнопке Link Master (Context menu):
function command55555(){
var urllink=gContextMenu.linkURL;
startProcess(firefox,["-no-remote","-P","Имя вашего профиля",urllink]);
function startProcess(path, args){
var file=Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(path);
if(file.exists()){
var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
process.init(file);
process.run(false, args, args.length);}
};
}
Отсутствует
Andrey_Krropotkin, Попробовал подставить ... не работает
function command12(){ var urllink=gContextMenu.linkURL; startProcess(firefox,["-no-remote","-P","Test","C:\\Program Files\\Aurora\\firefox.exe"]); function startProcess(path, args){ var file=Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()){ var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length);} }; }
что тут неправильно?
Добавлено 23-06-2012 16:50:35
....или не там править нужно было может этот кусок ?
var this_=this; var folderpath="C:\\SAVEDURLS";// папка для сохранения ярлыков var profilepath='S:\\SNARK\\!wwwmy\\FirefoxPortable\\Data\\profile'; // Путь до папки с другим профилем Firefox var firefox="S:\\SNARK\\!wwwmy\\FirefoxPortable\\App\\Firefox\\firefox.exe"; // путь до Firefox по-умолчанию, // если намерены использовать другую версию для "Открыть в другом профиле Firefox" то укажите свой путь.
Отредактировано Крошка Ру (23-06-2012 16:50:35)
Отсутствует
Можно так же использовать относительный путь, если будете использовать Portable версию
// путь до папки с firefox.exe, в данном случае Aurora
var profileDir = Components.classes["@mozilla.org/file/directory_service;1"]
.getService(Components.interfaces.nsIProperties)
.get("CurProcD", Components.interfaces.nsILocalFile)
.path;
// путь до firefox.exe
var firefox = profileDir + "\\..\\Aurora\\firefox.exe";
startProcess(firefox,["-no-remote","-P","Test",url]);
Отсутствует
Andrey_Krropotkin,Спасибо
okkamas_knife , Вот так работает - Спасибо
Выделить кодКод:
function command12(){ var url=content.document.location.href; startProcess("C:\\Program Files\\Aurora\\firefox.exe",["-no-remote","-P","Test",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; }
а до этого сам смог додуматься >
заменить на
... теперь надо будет почистить код от лишних пунктов и "Link Master" заменить на "Открыть страницу в другом профиле Firefox" а в label: вписать имя профиля
Добавлено 23-06-2012 21:45:23
Попробовал удалить - добавить .... кнопка стала неактивной - что там неправильно?
var this_=this; var folderpath="C:\\SAVEDURLS";// папка для сохранения ярлыков var profilepath='S:\\SNARK\\!wwwmy\\FirefoxPortable\\Data\\profile'; // Путь до папки с другим профилем Firefox var firefox="S:\\SNARK\\!wwwmy\\FirefoxPortable\\App\\Firefox\\firefox.exe"; // путь до Firefox по-умолчанию, // если намерены использовать другую версию для "Открыть в другом профиле Firefox" то укажите свой путь. this.tooltipText="Link Master (Context menu)-Расширенное контекстное меню при клике на ссылку.\nЛКМ-сделать ссылки видимыми > Очень видимыми > Вернуть исходный вид(обновляет страницу)\nи так по кругу.\nПКМ-меню кнопки,настройки меню в секции Инициализация\nНе забудьте перезапустить Firefox после внесения изменений!\nСКМ - открывает пост с кнопкой на http://forum.mozilla-russia.org"; vislink42=1; var fficon="data:image/gif;base64,R0lGODlhFAAUAIcAANLOxsXBu4ifs1aVunu/11umx0yRvGGFprOvs8/KwmuTq5vY5YSEZaGIVeSVS1NTeB5yqrurfoK4vmm50HKyvp+RaPjLL/C/OM2zktTLu+B4H+KBKNOWZH3K2jFWj1BMSvbZKfC4F9HBs95zGspWFK+DVn6QkGCwzFmhwIafjvauBrikUr65td2kZt14J9qicjl+qBZWifGzIdm7DaOdj+SLNt5yFXuhoRhKfAc5bfzbRvbGGZSAXKktCnuBhjhumg0rYAgiVykvWfbEJGhYOtRcF7c0B3N1hE1/r19+lURqogYaTgcQRkpHYvO0M/jUBNJUFtdKBrx1OwMINVJabPnbNubLW2dhXMpyWtloEeJkDMpJDJYpDY4zIzUvOko3SLdxK/bKCPzgU62VR4iEg8y2sMo9D6ZXJyANc1A0IttwH+eXCPbHR/7yLVZGI7hQQNByKuWNCaeLFqw0HrkYCMY1E9pnHM6eBkM3Lca2pLIDAroRCr0gC6ZuCrSuo5JoYZgYC68iEH0uE5eSi3xza21oZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAUIAIYALAAAAAAUABQAAAj/AA0JHGgIgEEABBMSNCihQIcCBRQYVCiQ4QkCBBYsICCAQYWJC1s8gFAggoSNEyhUsMBGBMiCGxw42MAB44QOBDx8ALEDA0KBGTQIdQGlhIkJSFEUSKFixU8ALzbYGDHCxQsBBWDEgDEghYwZNCrWmEp1w40CBnDkwAGDgY4hFYBu0DACSg8fCgag+AEkiJAGIIYQqViEbg8jR5AgSaJkCZMmTp6A+FMRytQoUWxIceGCx5QpVKqEsHKlIhYtI7Jo2cKli5fPX8CEETMmbEUzWUbYsHHmCxomadSsYdPGTYCBAN6YUZNltxo4aqjGaSOn0M+Kc/jUqVPEzgg1NuI8N7mDp0xCAGXm6NmzR/uWLHH64GFxHTmAP10A7QnUQ1CaK/RRVFEAgxBSCCE0BPCSgAw26CBBAQEAOw=="; var mnusav="Сохранить ярлык в папку "+folderpath; (function LinkMasterMenu(){ const kXULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; var contextMenu = document.getElementById("contentAreaContextMenu"); var separator = document.getElementById("context-bookmarklink"); var eventTarget = null; var menu = document.createElementNS(kXULNS, "menu"); menu.id = "LinkMasterMenu"; menu.setAttribute("label", "Открыть в другом профиле Firefox>"); menu.setAttribute("class", "menu-iconic"); menu.setAttribute("image", lmicon); menu.hidden = true; contextMenu.insertBefore(menu, separator ); var menuPopup = document.createElementNS(kXULNS, "menupopup"); menu.appendChild(menuPopup); var lst = [ { label:"Test", command:command1, image:fficon }, var lst = [ { label:"ИМЯ ПРОФИЛЯ", command:command2, image:fficon }, var lst = [ { label:"ИМЯ ПРОФИЛЯ", command:command3, image:fficon },]; for(var i = 0, m; m = lst[i]; i++){ if (m.label=="separator"){ var menuItem = document.createElementNS(kXULNS, "menuseparator"); menuItem.id = "context-Demo-Menu-" + m.label.toString(); menuPopup.appendChild(menuItem); } else{ var menuItem = document.createElementNS(kXULNS, "menuitem"); menuItem.setAttribute("label", m.label); menuItem.setAttribute("class", "menuitem-iconic"); menuItem.setAttribute("image", m.image); menuItem.setAttribute("type", "m.radio"); menuItem.addEventListener("command", m.command, false); menuItem.id = "context-Demo-Menu-" + m.label.toString(); menuPopup.appendChild(menuItem); } } contextMenu.addEventListener("popupshowing", setMenuDisplay, false); function setMenuDisplay(aEvent) { if (gContextMenu.onLink) { document.getElementById("LinkMasterMenu").hidden = false; } else document.getElementById("LinkMasterMenu").hidden = true; } //------------------------------------------------------ //----------------------------------------------------- function command1(){ var url=content.document.location.href; startProcess("C:\\Program Files\\Aurora\\firefox.exe",["-no-remote","-P","Test",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } //------------------------------------------------------ //----------------------------------------------------- function command2(){ var url=content.document.location.href; startProcess("C:\\Program Files\\< >\\firefox.exe",["-no-remote","-P","ИМЯ ПРОФИЛЯ",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } //------------------------------------------------------ //----------------------------------------------------- function command3(){ var url=content.document.location.href; startProcess("C:\\Program Files\\< >\\firefox.exe",["-no-remote","-P","ИМЯ ПРОФИЛЯ",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } })(); this.onclick = function(event) { if(event.button == 1) { getBrowser (). addTab ("http://forum.mozilla-russia.org/viewtopic.php?pid=533522#p533522"); }; };
.... наверное какие-нибудь закорючки пропустил и разрывы в коде допустил
Отредактировано Крошка Ру (23-06-2012 21:47:26)
Отсутствует
var lst = [ - лишние удалить?
Отредактировано Крошка Ру (23-06-2012 21:54:17)
Отсутствует
так работает >
var this_=this; var folderpath="C:\\SAVEDURLS";// папка для сохранения ярлыков var profilepath='S:\\SNARK\\!wwwmy\\FirefoxPortable\\Data\\profile'; // Путь до папки с другим профилем Firefox var firefox="S:\\SNARK\\!wwwmy\\FirefoxPortable\\App\\Firefox\\firefox.exe"; // путь до Firefox по-умолчанию, // если намерены использовать другую версию для "Открыть в другом профиле Firefox" то укажите свой путь. this.tooltipText="Link Master (Context menu)-Расширенное контекстное меню при клике на ссылку.\nЛКМ-сделать ссылки видимыми > Очень видимыми > Вернуть исходный вид(обновляет страницу)\nи так по кругу.\nПКМ-меню кнопки,настройки меню в секции Инициализация\nНе забудьте перезапустить Firefox после внесения изменений!\nСКМ - открывает пост с кнопкой на http://forum.mozilla-russia.org"; vislink42=1; var lmicon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAFVBMVEUAAJkAAP8AMwAAZgAAAAAAmQD////7HhmTAAAAB3RSTlP///////8AGksDRgAAAAFiS0dEBmFmuH0AAAAJcEhZcwAACxMAAAsTAQCanBgAAABSSURBVHjaY2BLYwOhBAa2tDQQgw3IYGMAIQYwFyrClgBSw8AGVZwGBQyCUIAQSVIGksnGaQxOymZpacZGagxAXmiwMVAKyDAFM+BSEMVGaXDtADaGHx7bD2cMAAAAAElFTkSuQmCC"; var fficon="data:image/gif;base64,R0lGODlhFAAUAIcAANLOxsXBu4ifs1aVunu/11umx0yRvGGFprOvs8/KwmuTq5vY5YSEZaGIVeSVS1NTeB5yqrurfoK4vmm50HKyvp+RaPjLL/C/OM2zktTLu+B4H+KBKNOWZH3K2jFWj1BMSvbZKfC4F9HBs95zGspWFK+DVn6QkGCwzFmhwIafjvauBrikUr65td2kZt14J9qicjl+qBZWifGzIdm7DaOdj+SLNt5yFXuhoRhKfAc5bfzbRvbGGZSAXKktCnuBhjhumg0rYAgiVykvWfbEJGhYOtRcF7c0B3N1hE1/r19+lURqogYaTgcQRkpHYvO0M/jUBNJUFtdKBrx1OwMINVJabPnbNubLW2dhXMpyWtloEeJkDMpJDJYpDY4zIzUvOko3SLdxK/bKCPzgU62VR4iEg8y2sMo9D6ZXJyANc1A0IttwH+eXCPbHR/7yLVZGI7hQQNByKuWNCaeLFqw0HrkYCMY1E9pnHM6eBkM3Lca2pLIDAroRCr0gC6ZuCrSuo5JoYZgYC68iEH0uE5eSi3xza21oZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAUIAIYALAAAAAAUABQAAAj/AA0JHGgIgEEABBMSNCihQIcCBRQYVCiQ4QkCBBYsICCAQYWJC1s8gFAggoSNEyhUsMBGBMiCGxw42MAB44QOBDx8ALEDA0KBGTQIdQGlhIkJSFEUSKFixU8ALzbYGDHCxQsBBWDEgDEghYwZNCrWmEp1w40CBnDkwAGDgY4hFYBu0DACSg8fCgag+AEkiJAGIIYQqViEbg8jR5AgSaJkCZMmTp6A+FMRytQoUWxIceGCx5QpVKqEsHKlIhYtI7Jo2cKli5fPX8CEETMmbEUzWUbYsHHmCxomadSsYdPGTYCBAN6YUZNltxo4aqjGaSOn0M+Kc/jUqVPEzgg1NuI8N7mDp0xCAGXm6NmzR/uWLHH64GFxHTmAP10A7QnUQ1CaK/RRVFEAgxBSCCE0BPCSgAw26CBBAQEAOw=="; var mnusav="Сохранить ярлык в папку "+folderpath; (function LinkMasterMenu(){ const kXULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; var contextMenu = document.getElementById("contentAreaContextMenu"); var separator = document.getElementById("context-bookmarklink"); var eventTarget = null; var menu = document.createElementNS(kXULNS, "menu"); menu.id = "LinkMasterMenu"; menu.setAttribute("label", "Открыть в другом профиле Firefox>"); menu.setAttribute("class", "menu-iconic"); menu.setAttribute("image", lmicon); menu.hidden = true; contextMenu.insertBefore(menu, separator ); var menuPopup = document.createElementNS(kXULNS, "menupopup"); menu.appendChild(menuPopup); var lst = [ { label:"Test", command:command12, image:fficon }, ]; for(var i = 0, m; m = lst[i]; i++){ if (m.label=="separator"){ var menuItem = document.createElementNS(kXULNS, "menuseparator"); menuItem.id = "context-Demo-Menu-" + m.label.toString(); menuPopup.appendChild(menuItem); } else{ var menuItem = document.createElementNS(kXULNS, "menuitem"); menuItem.setAttribute("label", m.label); menuItem.setAttribute("class", "menuitem-iconic"); menuItem.setAttribute("image", m.image); menuItem.setAttribute("type", "m.radio"); menuItem.addEventListener("command", m.command, false); menuItem.id = "context-Demo-Menu-" + m.label.toString(); menuPopup.appendChild(menuItem); } } contextMenu.addEventListener("popupshowing", setMenuDisplay, false); function setMenuDisplay(aEvent) { if (gContextMenu.onLink) { document.getElementById("LinkMasterMenu").hidden = false; } else document.getElementById("LinkMasterMenu").hidden = true; //------------------------------------------------------ //----------------------------------------------------- function command10(){ var url=content.document.location.href; startProcess("C:\\Program Files\\\\firefox.exe",["-no-remote","-P","",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } } //------------------------------------------------------ //----------------------------------------------------- function command11(){ var url=content.document.location.href; startProcess("C:\\Program Files\\\\firefox.exe",["-no-remote","-P","",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } //------------------------------------------------------ //----------------------------------------------------- function command12(){ var url=content.document.location.href; startProcess("C:\\Program Files\\Aurora\\firefox.exe",["-no-remote","-P","Test",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } })(); this.onclick = function(event) { if(event.button == 1) { getBrowser (). addTab ("http://forum.mozilla-russia.org/viewtopic.php?pid=533522#p533522"); }; };
но когда пытаюсь добавить новые label
{ label:"", command:command10, image:fficon }, { label:"", command:command11, image:fficon },
кнопка становится неактивной
Отсутствует
кнопку для отключения-включения shockwave Flash
Можно, только я не уверен, что там постоянный id.
В инициализацию:
const addonId = "{8b46070c-bec0-bf24-366c-bc77e425e7a6}"; // Shockwave Flash Components.utils.import("resource://gre/modules/AddonManager.jsm"); var addonListener = { button: this, onEnabled: function(addon) { if(addon.id == addonId) this.button.checked = true; }, onDisabled: function(addon) { if(addon.id == addonId) this.button.checked = false; } }; AddonManager.addAddonListener(addonListener); this.onDestroy = function() { AddonManager.removeAddonListener(addonListener); }; this.onclick = function(e) { if(e.button == 0) { AddonManager.getAddonByID(addonId, function(addon) { addon.userDisabled = !addon.userDisabled; }); } }; var button = this; AddonManager.getAddonByID(addonId, function(addon) { button.checked = !addon.userDisabled; });
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
vital32 пишет: кнопку для отключения-включения shockwave FlashМожно, только я не уверен, что там постоянный id. В инициализацию:Выделить кодКод:const addonId = "{8b46070c-bec0-bf24-366c-bc77e425e7a6}"; // Shockwave Flash
Components.utils.import("resource://gre/modules/AddonManager.jsm");
var addonListener = {
button: this,
onEnabled: function(addon) {
if(addon.id == addonId)
this.button.checked = true;
},
onDisabled: function(addon) {
if(addon.id == addonId)
this.button.checked = false;
}
};
AddonManager.addAddonListener(addonListener);
this.onDestroy = function() {
AddonManager.removeAddonListener(addonListener);
};this.onclick = function(e) {
if(e.button == 0) {
AddonManager.getAddonByID(addonId, function(addon) {
addon.userDisabled = !addon.userDisabled;
});
}
};var button = this;
AddonManager.getAddonByID(addonId, function(addon) {
button.checked = !addon.userDisabled;
});
Нет не работает,
Отсутствует
vital32
Работает и этот тоже http://forum.mozilla-russia.org/viewtop … 93#p568393
Отсутствует
vital32
Работает и этот тоже http://forum.mozilla-russia.org/viewtop … 93#p568393
не работает я ж написал внизу
Отсутствует
в конце запятая лишняя
okkamas_knife ,без запятой тоже самое
var this_=this; var folderpath="C:\\SAVEDURLS";// папка для сохранения ярлыков var profilepath='S:\\SNARK\\!wwwmy\\FirefoxPortable\\Data\\profile'; // Путь до папки с другим профилем Firefox var firefox="S:\\SNARK\\!wwwmy\\FirefoxPortable\\App\\Firefox\\firefox.exe"; // путь до Firefox по-умолчанию, // если намерены использовать другую версию для "Открыть в другом профиле Firefox" то укажите свой путь. this.tooltipText="Link Master (Context menu)-Расширенное контекстное меню при клике на ссылку.\nЛКМ-сделать ссылки видимыми > Очень видимыми > Вернуть исходный вид(обновляет страницу)\nи так по кругу.\nПКМ-меню кнопки,настройки меню в секции Инициализация\nНе забудьте перезапустить Firefox после внесения изменений!\nСКМ - открывает пост с кнопкой на http://forum.mozilla-russia.org"; vislink42=1; var lmicon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAFVBMVEUAAJkAAP8AMwAAZgAAAAAAmQD////7HhmTAAAAB3RSTlP///////8AGksDRgAAAAFiS0dEBmFmuH0AAAAJcEhZcwAACxMAAAsTAQCanBgAAABSSURBVHjaY2BLYwOhBAa2tDQQgw3IYGMAIQYwFyrClgBSw8AGVZwGBQyCUIAQSVIGksnGaQxOymZpacZGagxAXmiwMVAKyDAFM+BSEMVGaXDtADaGHx7bD2cMAAAAAElFTkSuQmCC"; var fficon="data:image/gif;base64,R0lGODlhFAAUAIcAANLOxsXBu4ifs1aVunu/11umx0yRvGGFprOvs8/KwmuTq5vY5YSEZaGIVeSVS1NTeB5yqrurfoK4vmm50HKyvp+RaPjLL/C/OM2zktTLu+B4H+KBKNOWZH3K2jFWj1BMSvbZKfC4F9HBs95zGspWFK+DVn6QkGCwzFmhwIafjvauBrikUr65td2kZt14J9qicjl+qBZWifGzIdm7DaOdj+SLNt5yFXuhoRhKfAc5bfzbRvbGGZSAXKktCnuBhjhumg0rYAgiVykvWfbEJGhYOtRcF7c0B3N1hE1/r19+lURqogYaTgcQRkpHYvO0M/jUBNJUFtdKBrx1OwMINVJabPnbNubLW2dhXMpyWtloEeJkDMpJDJYpDY4zIzUvOko3SLdxK/bKCPzgU62VR4iEg8y2sMo9D6ZXJyANc1A0IttwH+eXCPbHR/7yLVZGI7hQQNByKuWNCaeLFqw0HrkYCMY1E9pnHM6eBkM3Lca2pLIDAroRCr0gC6ZuCrSuo5JoYZgYC68iEH0uE5eSi3xza21oZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAUIAIYALAAAAAAUABQAAAj/AA0JHGgIgEEABBMSNCihQIcCBRQYVCiQ4QkCBBYsICCAQYWJC1s8gFAggoSNEyhUsMBGBMiCGxw42MAB44QOBDx8ALEDA0KBGTQIdQGlhIkJSFEUSKFixU8ALzbYGDHCxQsBBWDEgDEghYwZNCrWmEp1w40CBnDkwAGDgY4hFYBu0DACSg8fCgag+AEkiJAGIIYQqViEbg8jR5AgSaJkCZMmTp6A+FMRytQoUWxIceGCx5QpVKqEsHKlIhYtI7Jo2cKli5fPX8CEETMmbEUzWUbYsHHmCxomadSsYdPGTYCBAN6YUZNltxo4aqjGaSOn0M+Kc/jUqVPEzgg1NuI8N7mDp0xCAGXm6NmzR/uWLHH64GFxHTmAP10A7QnUQ1CaK/RRVFEAgxBSCCE0BPCSgAw26CBBAQEAOw=="; var mnusav="Сохранить ярлык в папку "+folderpath; (function LinkMasterMenu(){ const kXULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; var contextMenu = document.getElementById("contentAreaContextMenu"); var separator = document.getElementById("context-bookmarklink"); var eventTarget = null; var menu = document.createElementNS(kXULNS, "menu"); menu.id = "LinkMasterMenu"; menu.setAttribute("label", "Открыть в другом профиле Firefox>"); menu.setAttribute("class", "menu-iconic"); menu.setAttribute("image", lmicon); menu.hidden = true; contextMenu.insertBefore(menu, separator ); var menuPopup = document.createElementNS(kXULNS, "menupopup"); menu.appendChild(menuPopup); var lst = [ { label:"Test", command:command12, image:fficon }, ]; for(var i = 0, m; m = lst[i]; i++){ if (m.label=="separator"){ var menuItem = document.createElementNS(kXULNS, "menuseparator"); menuItem.id = "context-Demo-Menu-" + m.label.toString(); menuPopup.appendChild(menuItem); } else{ var menuItem = document.createElementNS(kXULNS, "menuitem"); menuItem.setAttribute("label", m.label); menuItem.setAttribute("class", "menuitem-iconic"); menuItem.setAttribute("image", m.image); menuItem.setAttribute("type", "m.radio"); menuItem.addEventListener("command", m.command, false); menuItem.id = "context-Demo-Menu-" + m.label.toString(); menuPopup.appendChild(menuItem); } } contextMenu.addEventListener("popupshowing", setMenuDisplay, false); function setMenuDisplay(aEvent) { if (gContextMenu.onLink) { document.getElementById("LinkMasterMenu").hidden = false; } else document.getElementById("LinkMasterMenu").hidden = true; //------------------------------------------------------ //----------------------------------------------------- function command10(){ var url=content.document.location.href; startProcess("C:\\Program Files\\\\firefox.exe",["-no-remote","-P","",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } } //------------------------------------------------------ //----------------------------------------------------- function command11(){ var url=content.document.location.href; startProcess("C:\\Program Files\\\\firefox.exe",["-no-remote","-P","",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } //------------------------------------------------------ //----------------------------------------------------- function command12(){ var url=content.document.location.href; startProcess("C:\\Program Files\\Aurora\\firefox.exe",["-no-remote","-P","Test",url]); function startProcess(path, args) { var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); if(file.exists()) { var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); process.run(false, args, args.length); } else custombuttons. alertBox ("Файл не найден", path); }; } })(); this.onclick = function(event) { if(event.button == 1) { getBrowser (). addTab ("http://forum.mozilla-russia.org/viewtopic.php?pid=533522#p533522"); }; };
Отсутствует
Где-то когда-то видел кнопку , дублирующую пункт контекстного меню "Настроить..." , открывающий Окно настроек панелей инструментов ... или мне приснилось?
Отредактировано Крошка Ру (24-06-2012 11:05:20)
Отсутствует
Можно сделать кнопку, делающую резервирование закладок в указанную папку?
Отсутствует
Нет не работает,
Включение/выключение по имени:
const addonName = "Shockwave Flash"; var addonId; Components.utils.import("resource://gre/modules/AddonManager.jsm"); this.init = function() { var addonListener = { button: this, onEnabled: function(addon) { if(addon.id == addonId) this.button.checked = true; }, onDisabled: function(addon) { if(addon.id == addonId) this.button.checked = false; } }; AddonManager.addAddonListener(addonListener); this.onDestroy = function() { AddonManager.removeAddonListener(addonListener); }; }; var button = this; AddonManager.getAddonsByTypes(["plugin"], function(addons) { addons.some(function(addon) { if(addon.name.indexOf(addonName) != -1) { addonId = addon.id; button.checked = !addon.userDisabled; button.init(); return true; } return false; }); }); this.onclick = function(e) { if(e.button == 0) { if(!addonId) { alert(addonName + " not installed!"); return; } AddonManager.getAddonByID(addonId, function(addon) { addon.userDisabled = !addon.userDisabled; }); } };
Если тоже не работает, то выполнить в консоли ошибок
Components.utils.import("resource://gre/modules/AddonManager.jsm"); AddonManager.getAllAddons(function(addons) { var params = ["name", "version", "id", "type", "appDisabled", "userDisabled", "isActive"]; var addonsData = []; addons.forEach(function(addon) { addonsData.push( params.map(function(s) { return s + " = " + addon[s]; }).join("\n") ); }); Components.classes["@mozilla.org/consoleservice;1"] .getService(Components.interfaces.nsIConsoleService) .logStringMessage("Addons:\n\n" + addonsData.join("\n\n")); });
В консоль запишет список всех дополнений.
Или скопировать нужный id в первый вариант кнопки, или name (можно часть, но с учетом регистра) во второй.
Отредактировано Infocatcher (24-06-2012 19:33:15)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
используй консоль ошибок там обычно пишется где или что за ошибка
okkamas_knife
Ошибка: ReferenceError: command10 is not defined
Источник: chrome://custombuttons-context/content/button.js?windowId=Firefox&id=custombuttons-button47@init
Строка: 45
Добавлено 24-06-2012 19:53:08
okkamas_knife Спасибо, а можно чтобы открывалось в нижней панели ?
Отредактировано Крошка Ру (24-06-2012 19:53:08)
Отсутствует
Victorrr72
http://forum.mozilla-russia.org/viewtop … 76#p292076 и сообщения ниже
Спасибо за наводку. Кнопка работает нормально. Но в этом варианте выполняется экспорт закладок в html, соответственно и импортировать приходится из html, а при этом лис у меня начинает вести себя непредсказуемо (закладок у меня много, может причина в этом). Меня интересует именно резервное копирование в json. Возможно по аналогии с указаннной Вами кнопкой можно сделать то, что мне нужно. Но, увы, я это вряд ли смогу.
P.S. Проверил еще раз. Кнопка действительно работает нормально. Вот только лис не восстанавливает закладки из html файла. Версия 13.0.1. Может это только у меня, но это есть факт.
В идеале, эта кнопка мне видится так:
ЛКМ - резервное копирование закладок в указанную папку в формате JSON;
ПКМ - восстановление закладок из резервной копии, находящейся в указанной папке.
Отредактировано Victorrr72 (24-06-2012 20:33:36)
Отсутствует
теперь другая проблемка, кнопка в реале отключает флеш плагин в дополнениях, когда нажимаю на кнопку и смотрю в дополнениях то реально кнопка отображает мне, что я включаю и отключаю плагин, но на сайте что я использую звук все равно идет, хотя я раньше когда отключал плагин сам, просто отключал в дополнениях, но не кнопкой, тогда нажимал звуки отключались а сейчас что за беда. Кнопка показывает что реально плагин включаю выключаю но звуки есть на сайте????
Как решить
Добавлено 24-06-2012 21:15:16
кажись нашел, у меня в "управлении дополнениях" "плагины" два shockwaveflash и кнопка только один отключает а второй не троагет, как убрать втрой палгин shockwaveflash
Отредактировано vital32 (24-06-2012 21:15:16)
Отсутствует
bunda1
Memory Monitor
как сделать чтобы в адресной строке отображение памяти было крупнее, а то мелкий почему то у меня шрифт
Отредактировано skynet281978 (25-06-2012 01:45:55)
Отсутствует