Ребята такой вопрос.
Может ли повлиять на потребление памяти FireFox использование большого количества кнопок Custom Buttons?
Конечно может если кнопок оченъ много или кнопки криво написаны. Но мой опыт показывает что CB кнопки мало память жрут.
Отсутствует
Управление изображениями(Firefox)
Можно ли переделать эту кнопку на два режима работы - загружать/не загружать изображения? И еще иконки подредактировать, если можно: если выбрано загружать изображения - тогда это черный или серый лист. Если выбрано не загружать изображения - тогда это белый лист с квадратиком слева (он уже есть в данном коде). Дело в том, что голубой цвет привлекает внимание, а это не есть гуд.
Заранее спасибо)
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%3E%u0423%u043F%u0440%u0430%u0432%u043B%u0435%u043D%u0438%u0435%20%u0438%u0437%u043E%u0431%u0440%u0430%u0436%u0435%u043D%u0438%u044F%u043C%u0438%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/UlJS/1dXV/9dXV3/XV1d/11dXf9dXV3/XFxc/8zMzP/h4eH/39/f/9ra2v/V1dX/0dHR/83Nzf/Hx8f/a2tr/76+vv/o6Oj/6urq/+rq6v/V1dX/XV1d/1xcXP/Ozs7/ra2t/5WVlf+RkZH/kJCQ/42Njf+MjIz/zc3N/2xsbP+Ghob/oKCg/6enp/+5ubn/1dXV/11dXf9cXFz/zs7O/6+vr/+VlZX/kZGR/5WVlf+mpqb/tLS0/+Xl5f9vb2//hoaG/6CgoP+oqKj/urq6/9XV1f9dXV3/XFxc/8/Pz/+xsbH/n5+f/7W1tf/R0dH/1tbW/9PT0//u7u7/cHBw/4iIiP+ioqL/qamp/7u7u//V1dX/XV1d/1xcXP/Z2dn/2tra/93d3f/k5OT/4ODg/9vb2//Y2Nj/8PDw/3Fxcf+JiYn/paWl/6urq/+9vb3/1tbW/11dXf9cXFz/4+Pj//Ly8v/u7u7/6+vr/+fn5//j4+P/3t7e//Pz8/9xcXH/jo6O/6enp/+srKz/vb29/9XV1f9dXV3/XFxc/93d3f/39/f/+fn5//n5+f/4+Pj/9vb2//X19f/v7+//cXFx/5WVlf+urq7/r6+v/8DAwP/W1tb/XV1d/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP+ZmZn/srKy/7Kysv/CwsL/1tbW/11dXf8AAAAAAAAAAF1dXbavr6//2dnZ/7y8vP+7u7v/ubm5/7m5uf+3t7f/tbW1/7Ozs/+ysrL/wsLC/9jY2P9dXV3/AAAAAAAAAABdXV22sLCw/9ra2v++vr7/u7u7/7q6uv+6urr/ubm5/7e3t/+0tLT/srKy/8LCwv/W1tb/XV1d/wAAAAAAAAAAXV1dtrCwsP/a2tr/v7+//76+vv+8vLz/vLy8/7q6uv93d3f/XV1d/11dXf9dXV3/XV1d/11dXf8AAAAAAAAAAF1dXbawsLD/29vb/8HBwf+/v7//v7+//729vf+6urr/d3d3/6+vr//s7Oz/wsLC/11dXf9dXV3/AAAAAAAAAABdXV22sLCw/9vb2//CwsL/wsLC/8LCwv/AwMD/vb29/3h4eP+wsLD/sLCw/11dXf9dXV3bAAAAAAAAAAAAAAAAXV1dtrCwsP/v7+//7+/v/+/v7//v7+//7u7u/+7u7v+Ghob/XV1d/11dXf9dXV22AAAAAAAAAAAAAAAAAAAAAF1dXbZdXV3/XV1d/11dXf9dXV3/XV1d/11dXf9dXV3/XV1d/11dXf9dXV2SAAAAAAAAAAAAAAAAAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBwACsQcAArEHAAKxBwACsQcABrEHAA6xBwAesQQ%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bthis.pref%3D%27permissions.default.image%27%3B%0Athis.setState%3Dfunction%28%29%7B%0Aswitch%28this.PS.getIntPref%28this.pref%29%29%7B%0Acase%201%3A%7Bthis.image%3D%27data%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/UlJS/1dXV/9dXV3/XV1d/11dXf9dXV3/XFxc/8zMzP/h4eH/39/f/9ra2v/V1dX/0dHR/83Nzf/Hx8f/a2tr/76+vv/o6Oj/6urq/+rq6v/V1dX/XV1d/1xcXP/Ozs7/ra2t/5WVlf+RkZH/kJCQ/42Njf+MjIz/zc3N/2xsbP+Ghob/oKCg/6enp/+5ubn/1dXV/11dXf9cXFz/zs7O/6+vr/+VlZX/kZGR/5WVlf+mpqb/tLS0/+Xl5f9vb2//hoaG/6CgoP+oqKj/urq6/9XV1f9dXV3/XFxc/8/Pz/+xsbH/n5+f/7W1tf/R0dH/1tbW/9PT0//u7u7/cHBw/4iIiP+ioqL/qamp/7u7u//V1dX/XV1d/1xcXP/Z2dn/2tra/93d3f/k5OT/4ODg/9vb2//Y2Nj/8PDw/3Fxcf+JiYn/paWl/6urq/+9vb3/1tbW/11dXf9cXFz/4+Pj//Ly8v/u7u7/6+vr/+fn5//j4+P/3t7e//Pz8/9xcXH/jo6O/6enp/+srKz/vb29/9XV1f9dXV3/XFxc/93d3f/39/f/+fn5//n5+f/4+Pj/9vb2//X19f/v7+//cXFx/5WVlf+urq7/r6+v/8DAwP/W1tb/XV1d/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP+ZmZn/srKy/7Kysv/CwsL/1tbW/11dXf8AAAAAAAAAAF1dXbavr6//2dnZ/7y8vP+7u7v/ubm5/7m5uf+3t7f/tbW1/7Ozs/+ysrL/wsLC/9jY2P9dXV3/AAAAAAAAAABdXV22sLCw/9ra2v++vr7/u7u7/7q6uv+6urr/ubm5/7e3t/+0tLT/srKy/8LCwv/W1tb/XV1d/wAAAAAAAAAAXV1dtrCwsP/a2tr/v7+//76+vv+8vLz/vLy8/7q6uv93d3f/XV1d/11dXf9dXV3/XV1d/11dXf8AAAAAAAAAAF1dXbawsLD/29vb/8HBwf+/v7//v7+//729vf+6urr/d3d3/6+vr//s7Oz/wsLC/11dXf9dXV3/AAAAAAAAAABdXV22sLCw/9vb2//CwsL/wsLC/8LCwv/AwMD/vb29/3h4eP+wsLD/sLCw/11dXf9dXV3bAAAAAAAAAAAAAAAAXV1dtrCwsP/v7+//7+/v/+/v7//v7+//7u7u/+7u7v+Ghob/XV1d/11dXf9dXV22AAAAAAAAAAAAAAAAAAAAAF1dXbZdXV3/XV1d/11dXf9dXV3/XV1d/11dXf9dXV3/XV1d/11dXf9dXV2SAAAAAAAAAAAAAAAAAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBwACsQcAArEHAAKxBwACsQcABrEHAA6xBwAesQQ%3D%3D%27%3B%0A%20%7D%3B%0ABrowserReload%28%29%3B%20%0Abreak%3B%0Acase%202%3A%7Bthis.image%3D%27data%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABdXV0Au7u7AOrq6gDv7+8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVVAAAAAAAAVVUDMzMzIiBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREwVVUDERERETBVVQMRERAAAFVVAxEREDMAVVUDEREQMAVVVQMzMzAAVVVVAAAAAAVVXgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AMAAOAHAADgDwAA%27%3B%0A%20%7D%3B%20%0Abreak%3B%0A%7D%0A%20%7D%0A%0Athis.PS%3D%0A%20Components.classes%5B%27@mozilla.org/preferences-service%3B1%27%5D%0A%20.getService%28Components.interfaces.nsIPrefBranch%29%3B%0Athis.ob%3D%7B%7D%3B%0Athis.ob.observe%3Dthis.setState.bind%28this%29%3B%0Athis.PS.addObserver%28this.pref%2Cthis.ob%2Cfalse%29%3B%0Athis.setState%28%29%3B%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5Bswitch%28this.PS.getIntPref%28this.pref%29%29%7B%0A%20%20%20%20case%201%3A%20this.PS.setIntPref%28this.pref%2C2%29%3Bbreak%3B%0A%20%20%20%20case%202%3A%20this.PS.setIntPref%28this.pref%2C1%29%3Bbreak%3B%0A%7D%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%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Отредактировано bunda1 (25-12-2011 00:12:36)
Отсутствует
bunda1
Можете написать код, для кнопки Toggle Find+ чтобы он выполнял только две функции, файндбар сверху и показ открытие по ctrl+f, просто остальное ненужно в том числе и поиск из буфера любыми способами. Пытался сам "обрезать" код, но так как не разбираюсь, то ничего не вышло
Отсутствует
bunda1
Можете написать код, для кнопки Toggle Find+ чтобы он выполнял только две функции, файндбар сверху и показ открытие по ctrl+f, просто остальное ненужно в том числе и поиск из буфера любыми способами. Пытался сам "обрезать" код, но так как не разбираюсь, то ничего не вышло
файндбар сверху, в инициализацию
//find bar сверху (move find bar to the top)................................................ XPCOMUtils.defineLazyGetter(window, "gFindBar", function() { let XULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; let findbar = document.createElementNS(XULNS, "findbar"); findbar.setAttribute("browserid", "content"); findbar.id = "FindToolbar"; gBrowser.parentNode.insertBefore(findbar, gBrowser); // Force a style flush to ensure that our binding is attached. findbar.clientTop; window.gFindBarInitialized = true; return findbar; });
показ открытие по ctrl+f, в инициализацию
//FindBar, сочетания клавиш(Key config)......................................................... (function () { //Стоп, при открытии настройки панелей if (window.FBRun == 'stop') return; window.FBRun = String('stop'); //FindBar(ctrl+ F)показать - скрыть(Toggle Find Bar)......... window.addEventListener('keydown', function (event){ if (event.altKey == false) { if ((event.keyCode==0x46)&&(event.ctrlKey)) { event.preventDefault(); event.stopPropagation(); gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close();}} }, false); })();
Отсутствует
Привет всем!!!
Сляпал вот такую кнопку с такой вот функцией.
Я не на что не претендую,просто хочу этим сказать,что этот форум реально помогает пользователям FireFox.
Спасибо модераторам этого форума за то,что подтолкнули меня в нужном направлении.Теперь я умею писать несложные скрипты для кнопок.
Мне давно хотелось немного расширить визуальное пространство браузера,но банальное скрытие панелей что то не по мне.Хотелось бы скрывать и раскрывать
разные панели с использованием анимации.Благо новые версии FireFox позволяют это делать.
Кнопка по ЛКМ раскрывает и по СКМ закрывает "Панель закладок"
Кнопка работает совместно с кодом прописанным в userChrome.css
Код для кнопки Custom Buttons:
//Кнопка показа Панели закладок
(function() {
var PT = document.getElementById("PersonalToolbar");
PT.setAttribute("style","top:87px");//Клик ЛКМ по кнопке и панель выезжает
this.onclick = function(event) {//Клик СКМ по странице и панель возвращает свой стиль в исходный
if (event.button == 1) {
PT.setAttribute("style", "");
};
};
})();
Код для userChrome.css
/* Панель закладок */
#PersonalToolbar:not([customizing]){
padding: 5px 5px 2px 5px !important;
position: fixed !important;
top: -150px;
left: 0;
z-index: 1000 !important;
width: auto !important;
-moz-transition: all 0.3s ease-in-out 0.3s !important;
background-image: -moz-linear-gradient(top,#CFDBEC, #BBC9DD) !important;
-moz-border-radius:0 0 10px 0;
border-bottom: 1px solid #868D98 !important;
border-right: 1px solid #868D98 !important;
}
Просто зацените.
Отредактировано questman (25-12-2011 12:35:19)
Отсутствует
Мне давно хотелось немного расширить визуальное пространство браузера,но банальное скрытие панелей что то не по мне.Хотелось бы скрывать и раскрывать
Удобнее сделать автоскрытие с помощью стиля. ИМХО. И панели у вас все дёргаются.
Отсутствует
Мне давно хотелось немного расширить визуальное пространство браузера,но банальное скрытие панелей что то не по мне.Хотелось бы скрывать и раскрывать
Удобнее сделать автоскрытие с помощью стиля. ИМХО. И панели у вас все дёргаются.
Да нет, не дёргаются.Это просто gif изображение такое.
С помощью стиля можно сделать конечно,но у меня эта кнопка работает совместно с другой.А другая открывает "кастомную" панель.
Поэтому в кнопки я добавил условные операторы,которые не дают панелям наезжать друг на друга,если открыть сразу обе.
Отсутствует
questman
может так лучше:
вкл/выкл по ЛКМ , в инициализацию
//настройка функций кликов мыши.... this.onclick = function(event) { var PT = document.getElementById("PersonalToolbar"); // Действие при клике ЛКМ if(event.button == 0) { if (PT.getAttribute("style")) { PT.removeAttribute("style"); } else { PT.setAttribute("style","top:87px"); } } };
Отсутствует
Monti пишетУправление изображениями(Firefox)
Можно ли переделать эту кнопку на два режима работы - загружать/не загружать изображения? И еще иконки подредактировать, если можно: если выбрано загружать изображения - тогда это черный или серый лист. Если выбрано не загружать изображения - тогда это белый лист с квадратиком слева (он уже есть в данном коде). Дело в том, что голубой цвет привлекает внимание, а это не есть гуд.
Заранее спасибо)скрытый текстКод кнопкиВыделить кодКод:
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%3E%u0423%u043F%u0440%u0430%u0432%u043B%u0435%u043D%u0438%u0435%20%u0438%u0437%u043E%u0431%u0440%u0430%u0436%u0435%u043D%u0438%u044F%u043C%u0438%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/UlJS/1dXV/9dXV3/XV1d/11dXf9dXV3/XFxc/8zMzP/h4eH/39/f/9ra2v/V1dX/0dHR/83Nzf/Hx8f/a2tr/76+vv/o6Oj/6urq/+rq6v/V1dX/XV1d/1xcXP/Ozs7/ra2t/5WVlf+RkZH/kJCQ/42Njf+MjIz/zc3N/2xsbP+Ghob/oKCg/6enp/+5ubn/1dXV/11dXf9cXFz/zs7O/6+vr/+VlZX/kZGR/5WVlf+mpqb/tLS0/+Xl5f9vb2//hoaG/6CgoP+oqKj/urq6/9XV1f9dXV3/XFxc/8/Pz/+xsbH/n5+f/7W1tf/R0dH/1tbW/9PT0//u7u7/cHBw/4iIiP+ioqL/qamp/7u7u//V1dX/XV1d/1xcXP/Z2dn/2tra/93d3f/k5OT/4ODg/9vb2//Y2Nj/8PDw/3Fxcf+JiYn/paWl/6urq/+9vb3/1tbW/11dXf9cXFz/4+Pj//Ly8v/u7u7/6+vr/+fn5//j4+P/3t7e//Pz8/9xcXH/jo6O/6enp/+srKz/vb29/9XV1f9dXV3/XFxc/93d3f/39/f/+fn5//n5+f/4+Pj/9vb2//X19f/v7+//cXFx/5WVlf+urq7/r6+v/8DAwP/W1tb/XV1d/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP+ZmZn/srKy/7Kysv/CwsL/1tbW/11dXf8AAAAAAAAAAF1dXbavr6//2dnZ/7y8vP+7u7v/ubm5/7m5uf+3t7f/tbW1/7Ozs/+ysrL/wsLC/9jY2P9dXV3/AAAAAAAAAABdXV22sLCw/9ra2v++vr7/u7u7/7q6uv+6urr/ubm5/7e3t/+0tLT/srKy/8LCwv/W1tb/XV1d/wAAAAAAAAAAXV1dtrCwsP/a2tr/v7+//76+vv+8vLz/vLy8/7q6uv93d3f/XV1d/11dXf9dXV3/XV1d/11dXf8AAAAAAAAAAF1dXbawsLD/29vb/8HBwf+/v7//v7+//729vf+6urr/d3d3/6+vr//s7Oz/wsLC/11dXf9dXV3/AAAAAAAAAABdXV22sLCw/9vb2//CwsL/wsLC/8LCwv/AwMD/vb29/3h4eP+wsLD/sLCw/11dXf9dXV3bAAAAAAAAAAAAAAAAXV1dtrCwsP/v7+//7+/v/+/v7//v7+//7u7u/+7u7v+Ghob/XV1d/11dXf9dXV22AAAAAAAAAAAAAAAAAAAAAF1dXbZdXV3/XV1d/11dXf9dXV3/XV1d/11dXf9dXV3/XV1d/11dXf9dXV2SAAAAAAAAAAAAAAAAAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBwACsQcAArEHAAKxBwACsQcABrEHAA6xBwAesQQ%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bthis.pref%3D%27permissions.default.image%27%3B%0Athis.setState%3Dfunction%28%29%7B%0Aswitch%28this.PS.getIntPref%28this.pref%29%29%7B%0Acase%201%3A%7Bthis.image%3D%27data%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/UlJS/1dXV/9dXV3/XV1d/11dXf9dXV3/XFxc/8zMzP/h4eH/39/f/9ra2v/V1dX/0dHR/83Nzf/Hx8f/a2tr/76+vv/o6Oj/6urq/+rq6v/V1dX/XV1d/1xcXP/Ozs7/ra2t/5WVlf+RkZH/kJCQ/42Njf+MjIz/zc3N/2xsbP+Ghob/oKCg/6enp/+5ubn/1dXV/11dXf9cXFz/zs7O/6+vr/+VlZX/kZGR/5WVlf+mpqb/tLS0/+Xl5f9vb2//hoaG/6CgoP+oqKj/urq6/9XV1f9dXV3/XFxc/8/Pz/+xsbH/n5+f/7W1tf/R0dH/1tbW/9PT0//u7u7/cHBw/4iIiP+ioqL/qamp/7u7u//V1dX/XV1d/1xcXP/Z2dn/2tra/93d3f/k5OT/4ODg/9vb2//Y2Nj/8PDw/3Fxcf+JiYn/paWl/6urq/+9vb3/1tbW/11dXf9cXFz/4+Pj//Ly8v/u7u7/6+vr/+fn5//j4+P/3t7e//Pz8/9xcXH/jo6O/6enp/+srKz/vb29/9XV1f9dXV3/XFxc/93d3f/39/f/+fn5//n5+f/4+Pj/9vb2//X19f/v7+//cXFx/5WVlf+urq7/r6+v/8DAwP/W1tb/XV1d/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP9cXFz/XFxc/1xcXP+ZmZn/srKy/7Kysv/CwsL/1tbW/11dXf8AAAAAAAAAAF1dXbavr6//2dnZ/7y8vP+7u7v/ubm5/7m5uf+3t7f/tbW1/7Ozs/+ysrL/wsLC/9jY2P9dXV3/AAAAAAAAAABdXV22sLCw/9ra2v++vr7/u7u7/7q6uv+6urr/ubm5/7e3t/+0tLT/srKy/8LCwv/W1tb/XV1d/wAAAAAAAAAAXV1dtrCwsP/a2tr/v7+//76+vv+8vLz/vLy8/7q6uv93d3f/XV1d/11dXf9dXV3/XV1d/11dXf8AAAAAAAAAAF1dXbawsLD/29vb/8HBwf+/v7//v7+//729vf+6urr/d3d3/6+vr//s7Oz/wsLC/11dXf9dXV3/AAAAAAAAAABdXV22sLCw/9vb2//CwsL/wsLC/8LCwv/AwMD/vb29/3h4eP+wsLD/sLCw/11dXf9dXV3bAAAAAAAAAAAAAAAAXV1dtrCwsP/v7+//7+/v/+/v7//v7+//7u7u/+7u7v+Ghob/XV1d/11dXf9dXV22AAAAAAAAAAAAAAAAAAAAAF1dXbZdXV3/XV1d/11dXf9dXV3/XV1d/11dXf9dXV3/XV1d/11dXf9dXV2SAAAAAAAAAAAAAAAAAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBwACsQcAArEHAAKxBwACsQcABrEHAA6xBwAesQQ%3D%3D%27%3B%0A%20%7D%3B%0ABrowserReload%28%29%3B%20%0Abreak%3B%0Acase%202%3A%7Bthis.image%3D%27data%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABdXV0Au7u7AOrq6gDv7+8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVVAAAAAAAAVVUDMzMzIiBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREwVVUDERERETBVVQMRERAAAFVVAxEREDMAVVUDEREQMAVVVQMzMzAAVVVVAAAAAAVVXgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AMAAOAHAADgDwAA%27%3B%0A%20%7D%3B%20%0Abreak%3B%0A%7D%0A%20%7D%0A%0Athis.PS%3D%0A%20Components.classes%5B%27@mozilla.org/preferences-service%3B1%27%5D%0A%20.getService%28Components.interfaces.nsIPrefBranch%29%3B%0Athis.ob%3D%7B%7D%3B%0Athis.ob.observe%3Dthis.setState.bind%28this%29%3B%0Athis.PS.addObserver%28this.pref%2Cthis.ob%2Cfalse%29%3B%0Athis.setState%28%29%3B%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5Bswitch%28this.PS.getIntPref%28this.pref%29%29%7B%0A%20%20%20%20case%201%3A%20this.PS.setIntPref%28this.pref%2C2%29%3Bbreak%3B%0A%20%20%20%20case%202%3A%20this.PS.setIntPref%28this.pref%2C1%29%3Bbreak%3B%0A%7D%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%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Спасибо большое за кнопку, но есть нюанс: иконка с серым листом выключает загрузку изображений, а иконка с серым листом и квадратиком внизу - включает. Мне хотелось бы, чтоб было наоборот) И еще иконка с квадратиком на фоне должна быть цветной, привлекать внимание - чтобы информировать и том, что отключена загрузка изображений.
Отсутствует
questman
может так лучше:
вкл/выкл по ЛКМ , в инициализациюВыделить кодКод:
//настройка функций кликов мыши.... this.onclick = function(event) { var PT = document.getElementById("PersonalToolbar"); // Действие при клике ЛКМ if(event.button == 0) { if (PT.getAttribute("style")) { PT.removeAttribute("style"); } else { PT.setAttribute("style","top:87px"); } } };
Вы читаете мои мысли.Конечно так лучше и удобнее.Но это для меня был следующий этап научится вешать разные действия на одну кнопку мыши.
Теперь это произойдёт быстрее.СПАСИБО!!!
Отсутствует
Спасибо большое за кнопку, но есть нюанс: иконка с серым листом выключает загрузку изображений, а иконка с серым листом и квадратиком внизу - включает. Мне хотелось бы, чтоб было наоборот) И еще иконка с квадратиком на фоне должна быть цветной, привлекать внимание - чтобы информировать и том, что отключена загрузка изображений.
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%3E%u0423%u043F%u0440%u0430%u0432%u043B%u0435%u043D%u0438%u0435%20%u0438%u0437%u043E%u0431%u0440%u0430%u0436%u0435%u043D%u0438%u044F%u043C%u0438%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABdXV0Au7u7AOrq6gDv7+8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVVAAAAAAAAVVUDMzMzIiBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREwVVUDERERETBVVQMRERAAAFVVAxEREDMAVVUDEREQMAVVVQMzMzAAVVVVAAAAAAVVXgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AMAAOAHAADgDwAA%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bthis.pref%3D%27permissions.default.image%27%3B%0Athis.setState%3Dfunction%28%29%7B%0Aswitch%28this.PS.getIntPref%28this.pref%29%29%7B%0Acase%201%3A%7Bthis.image%3D%27data%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABdXV0Au7u7AOrq6gDv7+8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVVAAAAAAAAVVUDMzMzIiBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREwVVUDERERETBVVQMRERAAAFVVAxEREDMAVVUDEREQMAVVVQMzMzAAVVVVAAAAAAVVXgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AMAAOAHAADgDwAA%27%3B%0A%20%7D%3B%0ABrowserReload%28%29%3B%20%0Abreak%3B%0Acase%202%3A%7Bthis.image%3D%27data%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAFo9M/3AAAACXBIWXMAAAsSAAALEgHS3X78AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAACp0lEQVR42mL4//8/g3zm6f8AAcQAYvz4uuc/QACBeSAOQAAx/P75/X/ukY//AQIILHXhz///lZe//wfJAgQQWOBui9D/P78t/6ftffcfIIAYYKbA9AIEEIjDWnPtx3+YIEAAMXz7/P7/75+v/mcADQQJAAQQ0HTt/y9nqv73W/caLAAQQDAzWC8CbWq89et//fWf/5HNBAgguIJzIKdc+v6/7Py3/8Wnv/wvPPkZrAgggMAKfv+c8P/f+8r//x+mAZ03/X/g5nf/sw68BysACCCIH78p///zSeb/n4ci/39d4P+/4+f//0d//QcrAAggFH8gY5A4CAMEEFxB0+1f/xtu/vxfc+X7f5CDYYoAAgiuoP7Gz//VV378r7j4HdkkVoAAgisA6Sy/8O1/ydmvYB+c+g02hRUggBgaw6T+g4Iegq//B/Fzj376fwLiSFaAAAIr+HI17f//l4X//9+JAyvIPPjh/3GoAoAAAit4MEns/71Gof+f1hmCFaQCownqTVaAAAIr+PNb4f+fFxL//9wUACsAScIUAAQQA8y/IA7IsSAvgvAFKD4PxdjCCIQBAgjDgAvQSK0DRmrtNWDQXAUFzTewxjNAn5/8/R/FIIAAwjAAZFsdMEFVAcMUFPkgzaAEUAoKvlOfkYMQ7AWAAAJrBvmLEC4Aasw/DsTHPiG7ghUggOAG/PkFTCG/p/3//6P///+PLf//vwamrsc5///+WQc2IHLX+//Zhz/+zz4EjwKwAQABBDfg90/d/w+mSvx/DEztPy+G//9/K/r//6vBwBhoBhvgv/HN//T97/9n7Hv//xiSAQABhDDgl8b/B33C/++3C/6/38T//34d7//7Vdz//0Kjzm/dq/9pe979T939Fp6UQQYABBDRYSAZdghrkgcIMAD5xMj+kGsEXgAAAABJRU5ErkJggg%3D%3D%27%3B%0A%20%7D%3B%20%0Abreak%3B%0A%7D%0A%20%7D%0A%0Athis.PS%3D%0A%20Components.classes%5B%27@mozilla.org/preferences-service%3B1%27%5D%0A%20.getService%28Components.interfaces.nsIPrefBranch%29%3B%0Athis.ob%3D%7B%7D%3B%0Athis.ob.observe%3Dthis.setState.bind%28this%29%3B%0Athis.PS.addObserver%28this.pref%2Cthis.ob%2Cfalse%29%3B%0Athis.setState%28%29%3B%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5Bswitch%28this.PS.getIntPref%28this.pref%29%29%7B%0A%20%20%20%20case%201%3A%20this.PS.setIntPref%28this.pref%2C2%29%3Bbreak%3B%0A%20%20%20%20case%202%3A%20this.PS.setIntPref%28this.pref%2C1%29%3Bbreak%3B%0A%7D%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%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Отсутствует
Monti пишетСпасибо большое за кнопку, но есть нюанс: иконка с серым листом выключает загрузку изображений, а иконка с серым листом и квадратиком внизу - включает. Мне хотелось бы, чтоб было наоборот) И еще иконка с квадратиком на фоне должна быть цветной, привлекать внимание - чтобы информировать и том, что отключена загрузка изображений.
скрытый текстВыделить кодКод:
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%3E%u0423%u043F%u0440%u0430%u0432%u043B%u0435%u043D%u0438%u0435%20%u0438%u0437%u043E%u0431%u0440%u0430%u0436%u0435%u043D%u0438%u044F%u043C%u0438%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABdXV0Au7u7AOrq6gDv7+8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVVAAAAAAAAVVUDMzMzIiBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREwVVUDERERETBVVQMRERAAAFVVAxEREDMAVVUDEREQMAVVVQMzMzAAVVVVAAAAAAVVXgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AMAAOAHAADgDwAA%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bthis.pref%3D%27permissions.default.image%27%3B%0Athis.setState%3Dfunction%28%29%7B%0Aswitch%28this.PS.getIntPref%28this.pref%29%29%7B%0Acase%201%3A%7Bthis.image%3D%27data%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABdXV0Au7u7AOrq6gDv7+8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVVAAAAAAAAVVUDMzMzIiBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREgVVUDERERESBVVQMRERERIFVVAxEREREwVVUDERERETBVVQMRERAAAFVVAxEREDMAVVUDEREQMAVVVQMzMzAAVVVVAAAAAAVVXgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AEAAOABAADgAQAA4AMAAOAHAADgDwAA%27%3B%0A%20%7D%3B%0ABrowserReload%28%29%3B%20%0Abreak%3B%0Acase%202%3A%7Bthis.image%3D%27data%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAFo9M/3AAAACXBIWXMAAAsSAAALEgHS3X78AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAACp0lEQVR42mL4//8/g3zm6f8AAcQAYvz4uuc/QACBeSAOQAAx/P75/X/ukY//AQIILHXhz///lZe//wfJAgQQWOBui9D/P78t/6ftffcfIIAYYKbA9AIEEIjDWnPtx3+YIEAAMXz7/P7/75+v/mcADQQJAAQQ0HTt/y9nqv73W/caLAAQQDAzWC8CbWq89et//fWf/5HNBAgguIJzIKdc+v6/7Py3/8Wnv/wvPPkZrAgggMAKfv+c8P/f+8r//x+mAZ03/X/g5nf/sw68BysACCCIH78p///zSeb/n4ci/39d4P+/4+f//0d//QcrAAggFH8gY5A4CAMEEFxB0+1f/xtu/vxfc+X7f5CDYYoAAgiuoP7Gz//VV378r7j4HdkkVoAAgisA6Sy/8O1/ydmvYB+c+g02hRUggBgaw6T+g4Iegq//B/Fzj376fwLiSFaAAAIr+HI17f//l4X//9+JAyvIPPjh/3GoAoAAAit4MEns/71Gof+f1hmCFaQCownqTVaAAAIr+PNb4f+fFxL//9wUACsAScIUAAQQA8y/IA7IsSAvgvAFKD4PxdjCCIQBAgjDgAvQSK0DRmrtNWDQXAUFzTewxjNAn5/8/R/FIIAAwjAAZFsdMEFVAcMUFPkgzaAEUAoKvlOfkYMQ7AWAAAJrBvmLEC4Aasw/DsTHPiG7ghUggOAG/PkFTCG/p/3//6P///+PLf//vwamrsc5///+WQc2IHLX+//Zhz/+zz4EjwKwAQABBDfg90/d/w+mSvx/DEztPy+G//9/K/r//6vBwBhoBhvgv/HN//T97/9n7Hv//xiSAQABhDDgl8b/B33C/++3C/6/38T//34d7//7Vdz//0Kjzm/dq/9pe979T939Fp6UQQYABBDRYSAZdghrkgcIMAD5xMj+kGsEXgAAAABJRU5ErkJggg%3D%3D%27%3B%0A%20%7D%3B%20%0Abreak%3B%0A%7D%0A%20%7D%0A%0Athis.PS%3D%0A%20Components.classes%5B%27@mozilla.org/preferences-service%3B1%27%5D%0A%20.getService%28Components.interfaces.nsIPrefBranch%29%3B%0Athis.ob%3D%7B%7D%3B%0Athis.ob.observe%3Dthis.setState.bind%28this%29%3B%0Athis.PS.addObserver%28this.pref%2Cthis.ob%2Cfalse%29%3B%0Athis.setState%28%29%3B%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5Bswitch%28this.PS.getIntPref%28this.pref%29%29%7B%0A%20%20%20%20case%201%3A%20this.PS.setIntPref%28this.pref%2C2%29%3Bbreak%3B%0A%20%20%20%20case%202%3A%20this.PS.setIntPref%28this.pref%2C1%29%3Bbreak%3B%0A%7D%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%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Спасибо ОГРОМНОЕ!
Отсутствует
вот кнопка мож кому пригодится при клике на правую выподает меню со спископ аддонов возле каждого кнопки ,включить ,удалить,открыть папку либо файл аддона
в коде надо поменять путь
к program files на свой
local.initWithPath("e:\\pro\\WinRAR\\WinRAR.exe");
инилизация
const Cb = custombuttons;
function prop(aElement, aString) {
var emRDF = "http://www.mozilla.org/2004/em-rdf#";
var arc = RDFService.GetResource(emRDF + aString);
var target = extensionDS.GetTarget(aElement, arc, true);
if (target instanceof Ci.nsIRDFLiteral) return target.Value;
if (target instanceof Ci.nsIRDFInt) return target.Value;
return null;
}
var cloneCBcontext = {
cloneItems: function (aNode, aID, aSeparate) {
var menupopup = document.getElementById(aID).cloneNode(true);
var menuitems = menupopup.childNodes.length;
for (var i = 0; i < menuitems; i++)
aNode.appendChild(menupopup.firstChild);
if (aSeparate) aNode.appendChild(document.createElement("menuseparator"));
},
makeMenu: function (aNode) {
var m = aNode.appendChild(document.createElement("menu"));
m.setAttribute("label", "Custom Button");
m.setAttribute("oncommand", "event.stopPropagation()");
var mp = m.appendChild(document.createElement("menupopup"));
cloneCBcontext.cloneItems(mp, "custombuttons-contextpopup");
aNode.insertBefore(document.createElement("menuseparator"), m);
}
}
const popupID = "Context-extensionsButton";
var test = document.getElementById(popupID);
if (test) test.parentNode.removeChild(test);
var main = document.getElementById("mainPopupSet");
var cPopup = main.appendChild(document.createElement("menupopup"));
cPopup.id = popupID;
cPopup.setAttribute("oncommand", "event.stopPropagation(); document.popupNode.openPrefs(event);")
var test = document.getElementById("Context-extensionsButton");
var app = Cc ["@mozilla.org/fuel/application;1"]. getService (Ci. fuelIApplication);
var am = {};
Cu. import ("resource://gre/modules/AddonManager.jsm", am);
am. AddonManager. getAddonsByTypes
(
["extension"],
function (extensions)
{
var osnov_box= document.createElement('arrowscrollbox')
osnov_box.setAttribute("style","max-height: 400px ")
osnov_box. appendChild (document.createElement('menuseparator'))
var all_addons= document.createElement('caption')
all_addons.setAttribute("label", "ALL ADDONS"+" "+extensions. length)
var separator= document.createElement('separator')
separator.setAttribute("style", "height: 4px")
osnov_box. appendChild (all_addons)
osnov_box. appendChild (separator)
var iconURL='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACV0lEQVR4Xi3OT2ibZQDH8c/7msT1pZqOtlQ32ulaGJVuB0UvMiyRCbZCT14MHUIzcaCCFcZAGOiKIB3UkyCeBBU86EGYiPZanTIZwnTWScdqbdM/U/vHN1mS5jGHHD637w9+TOM1vKrTtPe8419z7njflrmWt2yb9ocpE0p4CaW2KTjVdtKgkqsnloZCMYyHQjgeHguD4YndoeBDwagZpzCKsfbmNIzjZZxF0aiS+Qd/TUJvRRjYzQcf2DPhotP6TOBJTOE5FIlVPG/NZEvRpq6Wpcp/dR1RXlcmz5pUasWOUalJDQ+3AOC83aGb/SF7TfCdMHCzJ5zYHwjKghXhwC1NXwvmBbOCgheVMI4iGSOas0MXXfWTdWU/WnBjc5kKUqpZkUGibkIFC1IdetSdwZXInB3HJS7bUNR3aCQbr67VaeAuKthGNxbxhVcccNiw8275LbZgw+dm/OUFn/h5falODjVUUUeEHfQKjrhg0OueEunUH3nGfY7akwjWvWnSjEdxG3U0UEOKCAnu4l58605Gzq4EOWRsqLWDFI22/bY6AlJ0ATHOCR6XlcgogCruRx6dgDo6BGvYQQY1cazfu3p9atUlxxT0YxnXcQ2/o4I8yvjSx+ZdsYI9ucjbNj2rx3UMY9O+ryy67bKGX3R42hEnjXnIIr4xJvE3LuH7WCqSw1HUsOAfq96QdU63j+SdUTbrBhLUHJTzg7Ki4ELsHhlNVJHBiIMOOatTnwSRYYeVHEMT2n3WMqoZizZ8pmm/BWKxLQXbHlCxjkfUDGs98yeqUluoAf8DkrzrAnZsWyMAAAAASUVORK5CYII='
var e;
var arr = [];
var j = 0
var arr1 = [];
var j1 = 0
for (var i = 0; i < extensions. length; i++)
{
var end=0
e = extensions [i];
if(e.appDisabled==true){
arr [j] = e;
j++
var end=1
}else{
if(e. userDisabled){
arr1 [j1] = e;
j1++
var end=1
}}
if(end==0){
var addon_box = document.createElement('hbox')
var addon_groupbox= document.createElement('vbox')
var addon_separator= document.createElement('separator')
addon_groupbox.setAttribute("style", "border: 1px solid gainsboro;border-radius: 4px")
var button_box = document.createElement('hbox')
osnov_box. appendChild (addon_groupbox)
addon_groupbox. appendChild (addon_box)
addon_groupbox. appendChild (button_box)
osnov_box. appendChild (addon_separator)
addon_separator.setAttribute("style", "height: 2px")
var mi =<menuitem xmlns={xulns} label={e. name + " " + e. version}/>
mi ["@id_"] = e. id;
if (e. iconURL)
{
mi ["@class"] = "menuitem-iconic bookmark-item";
mi ["@src"] = e. iconURL;
}
else{
mi ["@class"] = "menuitem-iconic bookmark-item";
mi ["@src"] =iconURL;
}
if (e. optionsURL)
mi ["@oncommand"] = "window. openDialog ('" + e. optionsURL + "', '', 'chrome,dialog=0,resizable,titlebar,toolbar,centerscreen');";
var mi=cbu. makeXML (mi)
addon_box. appendChild (mi);
but(e,button_box,mi)
but_del(e,button_box)
but_open(e,button_box)
}}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
osnov_box. appendChild (document.createElement('menuseparator'))
var all_addons= document.createElement('caption')
all_addons.setAttribute("label", "DISABLE ADDONS"+" "+arr1. length)
osnov_box. appendChild (all_addons)
osnov_box. appendChild (document.createElement('menuseparator'))
for (var i = 0; i < arr1. length; i++){
e = arr1[i];
var addon_box = document.createElement('hbox')
var addon_groupbox= document.createElement('vbox')
var addon_separator= document.createElement('separator')
addon_groupbox.setAttribute("style", "border: 1px solid gainsboro;border-radius: 4px")
var button_box = document.createElement('hbox')
osnov_box. appendChild (addon_groupbox)
addon_groupbox. appendChild (addon_box)
addon_groupbox. appendChild (button_box)
osnov_box. appendChild (addon_separator)
addon_separator.setAttribute("style", "height: 2px")
var mi =<menuitem xmlns={xulns} label={e. name + " " + e. version}/>
if (e. iconURL)
{
mi ["@class"] = "menuitem-iconic bookmark-item";
mi ["@src"] = e. iconURL;
}
else{
mi ["@class"] = "menuitem-iconic bookmark-item";
mi ["@src"] =iconURL;
}
mi ["@disabled"] = "true";
var mi=cbu. makeXML (mi)
addon_box. appendChild (mi);
but(e,button_box,mi)
but_del(e,button_box)
but_open(e,button_box)
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////
osnov_box. appendChild (document.createElement('menuseparator'))
var all_addons= document.createElement('caption')
all_addons.setAttribute("label", "FALSE ADDONS"+" "+arr. length)
osnov_box. appendChild (all_addons)
osnov_box. appendChild (document.createElement('menuseparator'))
for (var i = 0; i < arr. length; i++){
e = arr[i];
var addon_box = document.createElement('hbox')
var addon_groupbox= document.createElement('vbox')
var addon_separator= document.createElement('separator')
addon_groupbox.setAttribute("style", "border: 1px solid gainsboro;border-radius: 4px")
var button_box = document.createElement('hbox')
osnov_box. appendChild (addon_groupbox)
addon_groupbox. appendChild (addon_box)
addon_groupbox. appendChild (button_box)
osnov_box. appendChild (addon_separator)
addon_separator.setAttribute("style", "height: 2px")
var mi =<menuitem xmlns={xulns} label={e. name + " " + e. version}/>
if (e. iconURL)
{
mi ["@class"] = "menuitem-iconic bookmark-item";
mi ["@src"] = e. iconURL;
}
else{
mi ["@class"] = "menuitem-iconic bookmark-item";
mi ["@src"] =iconURL;
}
mi ["@disabled"] = "true";
var mi=cbu. makeXML (mi)
addon_box. appendChild (mi);
//but(e,button_box)
but_del(e,button_box)
but_open(e,button_box)
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
osnov_box.setAttribute("orient","vertical")
cPopup. appendChild (osnov_box)
}
);
var val = this. getAttribute ("id");
function but(e,button_box) {
var tr = e. id;
var m=document.createElement('button');
m.setAttribute('id_',tr);
if (e. userDisabled){
m.setAttribute('label',"Вкл")
}else{
m.setAttribute('label',"Выкл")
}
m.setAttribute('oncommand','var tqa = document.getElementById('+'"'+val+'"'+');tqa.vk(event)');
button_box. appendChild(m)
}
this. vk= function (event){
var bu= event. originalTarget;
var id= bu. getAttribute ("id_");
var app = Cc ["@mozilla.org/fuel/application;1"]. getService (Ci. fuelIApplication);
var am = {};
Cu. import ("resource://gre/modules/AddonManager.jsm", am);
am. AddonManager. getAddonByID
(
id,
function (e)
{
if (e. userDisabled){
e. userDisabled=false}
else{
e. userDisabled=true}
})}
function but_del(e,button_box) {
var tr = e. id;
var m=document.createElement('button');
m.setAttribute('id_',tr);
m.setAttribute('label',"del")
m.setAttribute('oncommand','var tqa = document.getElementById('+'"'+val+'"'+');tqa.del(event)');
button_box. appendChild(m)
}
this. del= function (event){
var bu= event. originalTarget;
var id= bu. getAttribute ("id_");
var app = Cc ["@mozilla.org/fuel/application;1"]. getService (Ci. fuelIApplication);
var am = {};
Cu. import ("resource://gre/modules/AddonManager.jsm", am);
am. AddonManager. getAddonByID
(
id,
function (e)
{
e.uninstall();
})
}
function but_open(e,button_box) {
var tr = e. id;
var m=document.createElement('button');
m.setAttribute('id_',tr);
m.setAttribute('label',"open")
m.setAttribute('oncommand','var tqa = document.getElementById('+'"'+val+'"'+');tqa.open_(event)');
button_box. appendChild (m)}
this.open_=function(event){
var bu= event. originalTarget;
var id= bu. getAttribute ("id_");
var file = Components.classes["@mozilla.org/file/directory_service;1"].
getService(Components.interfaces.nsIProperties).
get("ProfD", Components.interfaces.nsIFile);
file.append("extensions");
file.append(id);
var tr=file.exists()
if(tr==true){
let nsLocalFile = Components.Constructor("@mozilla.org/file/local;1",
"nsILocalFile", "initWithPath");
new nsLocalFile(file.path).reveal();}
else{
var id=id+'.xpi'
var file = Components.classes["@mozilla.org/file/directory_service;1"].
getService(Components.interfaces.nsIProperties).
get("ProfD", Components.interfaces.nsIFile);
file.append("extensions");
file.append(id);
var local = Components.classes["@mozilla.org/file/local;1"].
createInstance(Components.interfaces.nsILocalFile);
var process = Components.classes["@mozilla.org/process/util;1"].
createInstance(Components.interfaces.nsIProcess);
var args = [file.path]
local.initWithPath("e:\\pro\\WinRAR\\WinRAR.exe");
process.init(local);
process.run(false, args, args.length);}}
cloneCBcontext.makeMenu(cPopup);
this.setAttribute("context", popupID);
if (typeof Local_Install != "object") return;
var test = document.getElementById("cbContext-extensions");
if (test) test.parentNode.removeChild(test);
var cbPopup = document.getElementById("custombuttons-contextpopup-subCall").cloneNode(true); // Cb context
var subMenu = document.createElement("menu");
subMenu.setAttribute("label", "Custom Button");
subMenu.appendChild(cbPopup.lastChild);
var extensionsPopup = document.getElementById("emb-context");
var popup = extensionsPopup.cloneNode(true);
popup.id = "cbContext-extensions";
popup.appendChild(document.createElement("menuseparator"));
popup.appendChild(subMenu);
extensionsPopup.parentNode.appendChild(popup);
this.setAttribute("context", popup.id);
firefox forever
Отредактировано Ste_pan (27-12-2011 16:55:57)
Отсутствует
Ste_pan
Спасибо, хорошая кнопка.
Просьба:
убрать пункт Custom Button из меню и сделать CB меню по Ctrl+ПКМ
убрать или сделать отключаемыми пункты ALL ADDONS, DISABLE ADDONS, FALSE ADDONS, потому что уже есть хорошая кнопка Extension List которая тоже показывает эту информацию.
Отредактировано bunda1 (28-12-2011 01:03:07)
Отсутствует
Ste_pan
Спасибо, хорошая кнопка. Просьба: убрать пункт Custom Button из меню и сделать CB меню по Ctrl+ЛКМ убрать или сделать отключаемыми пункты ALL ADDONS, DISABLE ADDONS, FALSE ADDONS, потому что уже есть хорошая кнопка Extension List которая тоже показывает эту информацию.
+1
Отсутствует
Здравствуйте, в теме о кнопках для Сustom Buttons http://forum.mozilla-russia.org/viewtopic.php?id=41987 есть две кнопки которые мне нужны, вернее. с одинаковой функцией
- Up and Down on Page(прокрутка страницы вверх, вниз ) устанавливал обе кнопки, но эффект один, прокрутка только вверх. Не могу понять, в чём дело. Пробовал в 11 то же самое, сам на 10 постоянно, может не совместимо с этими лисами? Делать то ничего не надо, вставил в строку поиска, и счастье тебе) иконку потом вставил)
Походил по форуму, не знаю где такой вопрос задать не сочтите за флуд. Создал новую панель, а как её убрать теперь не пойму, подскажите пожалуйста(экспериментатору) Заранее спасибо!
Со вторым разобрался, убрал панельку) С нашим лисёнком скоро стану программером)
Отредактировано WW (29-12-2011 17:24:25)
Firefox - самый лучший брауз!!!
Отсутствует
Здравствуйте, в теме о кнопках для Сustom Buttons http://forum.mozilla-russia.org/viewtopic.php?id=41987 есть две кнопки которые мне нужны, вернее. с одинаковой функцией
- Up and Down on Page(прокрутка страницы вверх, вниз ) устанавливал обе кнопки, но эффект один, прокрутка только вверх. Не могу понять, в чём дело. Пробовал в 11 то же самое, сам на 10 постоянно, может не совместимо с этими лисами?
Up and Down on Page(Firefox 3.6-11)
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%3EUp%20and%20Down%20on%20Page%28Double%20click%20-%20middle%20of%20page%29%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABZ0RVh0Q3JlYXRpb24gVGltZQAwOC8xMS8wNdiEE10AAAAldEVYdFNvZnR3YXJlAE1hY3JvbWVkaWEgRmlyZXdvcmtzIE1YIDIwMDSHdqzPAAAC+klEQVR4nHWTX2hbZRjGf993ck6yJLYlWWur1aE0ZyizAxHs7Oqq3cZ0Yyg6EBHFOxWGipNRRsvAG7UXwhS9mOLohcg6tKjNdG5rwelQQZBNiieMlm2uNu2JJk1izp98nxdpnL3Yc/u+/Hif9+ERWmt++Hl2ua0lGVVa05TSUKt5BH7AcqEow0D9tbJS3mVEIhellOSc3zl86AUiAFHLStxld8f4n7TW1HxFPYRLc1dIJtbFL80vTF+9trgvGo3ONPckN5AQAilBSIU0JJ1d6xnsv2f9xsyGb8xI5EmlbwCY+3uOuqqjAQGEoU+q20CZZXTUY9O9N1v9Q3dMLBcWDxnrjLWAqdwUPUd6GDkzgud7CCkwpCDn5nD9PFWK5P0FcoUcWoUjaL0W8HL2eX7c/zVfzU9iRiJIIQgDheM6uEGeCiXy/gKO6xD43loLQ+MP8tbeN6nf5PHOY28w8NEW/DAg0GED4C9RociS/yeO62AYRgMwcKxPHL/8Umxj953ctqGds94pvNYy2zdv5cDnj1Neqa0CrltwCg5CAJ4gAoTbHngGt+0K39dnUFIxU53Gv9Vn191P8OiH2yAicYMlKqRYDBbIuTlu0ZtQw0oIDqMEQmilOTs6wclqls1mL8+OvYZSCoFgzczq5bmxA6i6QqMRWmvO/3Txn/5sb2z06f1ssXv5cvY0H5w4ztbb7+fgnhcptF0lX1+iGnoUvTJ+xWdH6w4Ojo81nqiATDpD2monTgsdVieZVIbx7ZN8d/4Tzk3P0m8MIpVkMP4QLX90kp06wX2pbvO/FOy0TdrsIEErHVYXmXQGrTWvD3yGc22Oy/N5Ho7uJFpMcvrXc5i/9NUSwlSymaWdtlcvaADslE2zW5/uPsnwF8PIksWrkyNM7P0WoeH9p7INgNJNC9cvsNM2yYRFMhEjmYjz9s5j9L33CEOdezBNEyEEQKONxVKpavfYsbTZToIkHVYXQdrgyLtHK7FoXOvVZrxijsrWC23q6G8fUy6teAD/Asu3UalfAv+YAAAAAElFTkSuQmCC%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bthis.leftclick%20%3D%20function%28e%29%20%7B%0A%20%20if%20%28content.scrollY%20%3C%20%28content.scrollMaxY%29/2%29%20%7B%0A%20%20%20%20content.scrollTo%280%2C%20content.scrollMaxY%29%3B%0A%20%20%7D%20else%20%7B%0A%20%20%20%20content.scrollTo%280%2C%200%29%3B%0A%20%20%7D%0A%7D%3B%0A%0Athis.leftDclick%20%3D%20function%28e%29%20%7B%0A%20%20content.scrollTo%280%2C%20%28content.scrollMaxY%29/2%29%3B%0A%7D%3B%0A%0A%0Athis.setAttribute%28%27onclick%27%2C%20%27gQuot%28event%2C%20this%29%27%29%3B%0Athis.setAttribute%28%27ondblclick%27%2C%20%27gQuot%28event%2C%20this%29%27%29%3B%0A%0A%0A%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*Initialization%20code*/%0A//var%20win%20%3D%20content%3B%0A%0A//alert%28win.innerHeight%20+%20win.scrollMaxY%29%3B%0A//content.scrollTo%280%2C%20win.innerHeight%20-%20win.scrollMaxY%29%3B%0A%0A%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%5B%0A%0ALeft%3A%0A%0A%20%20%20%20*%20Go%20to%20Bottom%0A%20%20%20%20*%20If%20at%20the%20bottom%20-%20Go%20to%20Top%0A%0AMiddle%3A%0A%0A%20%20%20%20*%20Go%20to%20Middle%20of%20Page%0A%0ARight%3A%0A%0A%20%20%20%20*%20Go%20to%20Top%0A%20%20%20%20*%20If%20at%20the%20Top%20-%20Go%20to%20Bottom%0A%0ALeft%20Dbl%3A%0A%0A%20%20%20%20*%20Go%20to%20Middle%20of%20Page%0A%0A%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Отредактировано bunda1 (29-12-2011 21:29:04)
Отсутствует
Здравствуйте
Искал решение своего вопроса, но не совсем то, что нужно получил.
Необходим пункт в контекстном меню вкладок: Остановить все вкладки (либо: Остановить загрузку всех вкладок)
Возможно ли это сделать не создавая такую кнопку?
Отсутствует
Здравствуйте
Искал решение своего вопроса, но не совсем то, что нужно получил.
Необходим пункт в контекстном меню вкладок: Остановить все вкладки (либо: Остановить загрузку всех вкладок)
Возможно ли это сделать не создавая такую кнопку?
Использование: положите код в любую Custom Buttons кнопку, в инициализацию. Не обязательно создавать новую CB кнопку, можно использовать уже существующую.
//"Stop Loading All Tabs" in Tab Context Menu............................................. (function() { //выходим, если функция уже выполнялась if (document.getElementById("StopAllTab")) return; //новый пункт в меню вкладок //настройки языка var locale = Components.classes["@mozilla.org/preferences-service;1"] .getService(Components.interfaces.nsIPrefBranch) .getCharPref("general.useragent.locale"); var tabContext = document.getAnonymousElementByAttribute( gBrowser, "anonid", "tabContextMenu") || gBrowser.tabContainer.contextMenu; var menuitem = tabContext.insertBefore(document.createElement("menuitem"), document.getElementById("context_reloadTab")); menuitem.id = "StopAllTab"; menuitem.setAttribute("label", locale.indexOf("ru") == -1?"Stop Loading All Tabs":"Остановить все вкладки"); menuitem.setAttribute("oncommand", "StopTab(event);" ); tabContext.insertBefore(menuitem,tabContext.firstChild.nextSibling); //Остановить все вкладки StopTab = function(event){ var len = gBrowser.mPanelContainer.childNodes.length; for (var i = 0; i < len; i++) { gBrowser.getBrowserAtIndex(i).stop(); } }; })();
Отредактировано bunda1 (01-01-2012 22:28:51)
Отсутствует
bunda1 спасибо что откликнулись на вопрос.
Дело в том что ни одной кнопки созданной до этого нет.
Поэтому я так понял, чтобы этот пункт появился необходимо чтобы кнопка была на панели.
Но это уже не просто пункт меню, а плюс ещё и не нужная кнопка.
Это единственный вариант?
Может быть есть вариант сделать кнопку невидимой?
Типа как невидимый разделитель, но чтобы минимум пространства отнимало на панели.
Отредактировано skynet281978 (01-01-2012 22:39:38)
Отсутствует