... в чём закавыка? ... а в обычном меню всё ок.
Наверно в нём и закавыка, у него куча атрибутов и без него
клонированное дитё не самодостаточно. А если клонировать именно #bookmarks-menu, то всё отображается.
И что с ним делать?
Вариант
MySidebar - в кнопочку превратить .... но только чтобы с правого края
Просто бездумная копипаста:
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%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOnp6Xva2tp709PTe9PT03vT09N709PTe9PT03vT09N709PTe9PT03va2tp76enpewAAAAAAAAAAAAAAAAAAAACjo6P/fHx8/3x8fP98fHz/fHx8/3x8fP98fHz/fHx8/3x8fP98fHz/fHx8/6Ojo/8AAAAAAAAAAAAAAAAAAAAAf39///Dw8P/s7Oz/7Ozs/+zs7P/s7Oz/7Ozs/+zs7P/s7Oz/7Ozs//Dw8P9/f3//AAAAAAAAAAAAAAAAAAAAAIGBgf/u7u7/6urq/+rq6v/q6ur/6urq/+rq6v/q6ur/6urq/+rq6v/u7u7/gYGB/wAAAAAAAAAAAAAAAAAAAACEhIT/8PDw/+3t7f/t7e3/7e3t/+3t7f/t7e3/7e3t/+3t7f/t7e3/8PDw/4SEhP8AAAAAAAAAAAAAAAAAAAAAh4eH//Pz8//w8PD/8PDw//Dw8P/w8PD/8PDw//Dw8P/w8PD/8PDw//Pz8/+Hh4f/AAAAAAAAAAAAAAAAAAAAAIqKiv/09PT/8vLy//Ly8v/y8vL/8vLy//Ly8v/y8vL/8vLy//Ly8v/09PT/ioqK/wAAAAAAAAAAAAAAAAAAAACOjo7/9/f3//T09P/09PT/9PT0//T09P/09PT/9PT0//T09P/09PT/9vb2/46Ojv8AAAAAAAAAAAAAAAAAAAAAkpKS//r6+v/5+fn/+fn5//j4+P/4+Pj/+Pj4//j4+P/39/f/9/f3//n5+f+SkpL/AAAAAAAAAAAAAAAAAAAAAJaWlv/7+/v/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/7+/v/lpaW/wAAAAAAAAAAAAAAAAAAAACZmZn//Pz8//v7+//7+/v/+/v7//v7+//7+/v/+fn5//b29v/19fX/+Pj4/5iYmP8AAAAAAAAAAAAAAAAAAAAAnJyc//39/f/8/Pz//Pz8//z8/P/8/Pz//Pz8//f39//u7u7/6+vr/+/v7/+enp7/AAAAAAAAAAAAAAAAAAAAAJ+fn//9/f3//f39//39/f/9/f3//f39//39/f/39/f/xMTE/8TExP/Jycn/ra2t/wAAAAAAAAAAAAAAAAAAAAChoaH//v7+//39/f/9/f3//f39//39/f/9/f3/+fn5/8nJyf/z8/P/s7Oz/9LS0v8AAAAAAAAAAAAAAAAAAAAApKSk///////+/v7//v7+//7+/v/+/v7//v7+//39/f/Pz8//tra2/83Nzf8AAAAAAAAAAAAAAAAAAAAAAAAAAMTExP+mpqb/pqam/6ampv+mpqb/pqam/6ampv+mpqb/t7e3/9bW1v8AAAAAAAAAAAAAAAAAAAAAwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAB6xBwA+sQQ%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bfunction%20tabChange%28event%29%20%7B%0A%09var%20BAR_DIV_ID%20%3D%20%22BAR_JSUN%22%3B%0A%09var%20HISTORY_SIDEBAR_DIV_ID%20%3D%20%22HISTORY_JSUN%22%3B%0A%09var%20BOOKMARKS_SIDEBAR_DIV_ID%20%3D%20%22BOOKMARKS_JSUN%22%3B%0A%0A%09var%20bar%20%3D%20null%3B%0A%09var%20bookmarks%20%3D%20null%3B%0A%09var%20sidebar%20%3D%20null%3B%0A%09var%20history%20%3D%20null%3B%0A%0A%09var%20document%20%3D%20event.originalTarget%3B%0A%09//%20HTMLDocument%uFF0C%u9876%u7EA7%u6587%u6863%uFF0C%u4E0D%u662Fiframe%0A%09if%20%28document%20instanceof%20HTMLDocument%20%26%26%20document.ownerDocument%20%3D%3D%20null%20%26%26%20%21document.defaultView.frameElement%29%20%7B%0A%09%09try%20%7B%0A%09%09%09bar%20%3D%20document.createElement%28%22div%22%29%3B%0A%09%09%09bar.setAttribute%28%22id%22%2C%20BAR_DIV_ID%29%3B%0A%09%09%09bookmarks%20%3D%20document.createElement%28%22div%22%29%3B%0A%09%09%09bookmarks.setAttribute%28%22id%22%2C%20BOOKMARKS_SIDEBAR_DIV_ID%29%3B%0A%09%09%09history%20%3D%20document.createElement%28%22div%22%29%3B%0A%09%09%09history.setAttribute%28%22id%22%2C%20HISTORY_SIDEBAR_DIV_ID%29%3B%0A%09%09%09document.documentElement.appendChild%28bar%29%3B%0A%09%09%09document.documentElement.appendChild%28history%29%3B%0A%09%09%09document.documentElement.appendChild%28bookmarks%29%3B%0A%0A%09%09%09hiddenBar%28%29%3B%0A%09%09%09bar.addEventListener%28%22mouseover%22%2C%20showBar%2C%20false%29%3B%0A%09%09%09bar.addEventListener%28%22mouseout%22%2C%20hiddenBar%2C%20false%29%3B%0A%09%09%09bookmarks.addEventListener%28%22mouseover%22%2C%0A%09%09%09openBookmarksSidebar%2C%20false%29%3B%0A%09%09%09history.addEventListener%28%22mouseover%22%2C%20openHistorySidebar%2C%0A%09%09%09false%29%3B%0A%0A%09%09%09sidebar%20%3D%20window.top.document.getElementById%28%22sidebar-box%22%29%3B%0A%09%09%09sidebar.addEventListener%28%22mouseleave%22%2C%0A%09%09%09closeBookmarksSidebar%2C%20false%29%3B%0A%09%09%7D%20catch%20%28e%29%20%7B%0A%09%09%09log%28%22err%3A%20%22%20+%20e%29%3B%0A%09%09%7D%0A%09%7D%0A%09function%20showBar%28%29%20%7B%0A%09%09setOpacity%280.8%29%3B%0A%09%09bar.removeEventListener%28%22mouseover%22%2C%20showBar%2C%20false%29%3B%0A%09%09bar.addEventListener%28%22mouseout%22%2C%20hiddenBar%2C%20false%29%3B%0A%09%7D%0A%0A%09function%20hiddenBar%28%29%20%7B%0A%09%09setOpacity%280.3%29%3B%0A%09%09bar.removeEventListener%28%22mouseout%22%2C%20hiddenBar%2C%20false%29%3B%0A%09%09bar.addEventListener%28%22mouseover%22%2C%20showBar%2C%20false%29%3B%0A%09%7D%0A%09function%20setOpacity%28n%29%20%7B%0A%09%09bar.innerHTML%20%3D%20%22%3Cdiv%20style%3D%27right%3A0%3Bbackground-color%3A%23BBFFEE%3Bopacity%3A%22%20+%20n%20+%20%22%3Bwidth%3A0.1%25%3Bheight%3A100%25%3Btop%3A0%25%3Bposition%3Afixed%3Bz-index%3A99%3Bborder%3A1px%20solid%20%23CCC%3B%27%3E%22%20+%20%22%3C/div%3E%22%3B%0A%09%09bookmarks.innerHTML%20%3D%20%22%3Cdiv%20style%3D%27right%3A0%3Bbackground-color%3A%23008800%3Bopacity%3A%22%20+%20n%20+%20%22%3Bwidth%3A0.1%25%3Bheight%3A24%25%3Btop%3A10%25%3Bposition%3Afixed%3Bz-index%3A999%3Bborder%3A1px%20solid%20%23CCC%3B%27%3E%22%20+%20%22%3C/div%3E%22%3B%0A%09%09history.innerHTML%20%3D%20%22%3Cdiv%20style%3D%27right%3A0%3Bbackground-color%3A%23008800%3Bopacity%3A%22%20+%20n%20+%20%22%3Bwidth%3A0.1%25%3Bheight%3A24%25%3Btop%3A56%25%3Bposition%3Afixed%3Bz-index%3A999%3Bborder%3A1px%20solid%20%23CCC%3B%27%3E%22%20+%20%22%3C/div%3E%22%3B%0A%0A%09%7D%0A%09function%20openBookmarksSidebar%28%29%20%7B%0A%09%09if%20%28sidebar.hidden%29%20%7B%0A%09%09%09toggleSidebar%28%22viewBookmarksSidebar%22%2C%20true%29%3B%0A%09%09%7D%20else%20%7B%0A%09%09%09toggleSidebar%28%29%3B%0A%09%09%7D%0A%09%7D%0A%09function%20openHistorySidebar%28%29%20%7B%0A%09%09if%20%28sidebar.hidden%29%20%7B%0A%09%09%09toggleSidebar%28%22viewHistorySidebar%22%2C%20true%29%3B%0A%09%09%7D%20else%20%7B%0A%09%09%09toggleSidebar%28%29%3B%0A%09%09%7D%0A%09%7D%0A%09function%20closeBookmarksSidebar%28%29%20%7B%0A%09%09setTimeout%28function%28%29%20%7B%0A%09%09%09if%20%28%21sidebar.hidden%29%20%7B%0A%09%09%09%09toggleSidebar%28%29%3B%0A%09%09%09%7D%0A%09%09%7D%2C%20100%29%3B%0A%09%7D%0A%7D%0AaddEventListener%28%22DOMTitleChanged%22%2C%20tabChange%2C%20true%2C%20gBrowser%29%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%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
и с возможностью добавления сигментов
Подробное описание желаемого часто бывает бесполезно, но уж точно почти никогда не повредит.
Отсутствует
написать про свои впечатления.
Собственно все то что нужно. Спасибо.
Но заметил что в режиме автоматического свёртывания, немного тормозит прокрутка на страницах, точнее говоря становится более грубой.
Если панель видна постоянно, тогда нормально.
Можно как-то поправить?
Отредактировано pohunohi (02-05-2013 20:52:34)
Отсутствует
Подробное описание желаемого часто бывает бесполезно, но уж точно почти никогда не повредит.
Dumby, MySidebar выделяет всего два довольно длинных отрезка , но куда рациональнее было бы разделить длину края экрана на большее количество сегментов , и тогда можно будет открывать не только Закладки и Журнал в боковой панели , но и что-то ещё ,а так же например выдвижные горизонтальные панели (тулбары)
Добавлено 02-05-2013 21:17:22
Просто бездумная копипаста:
Ага - работает , но только боковая панель появляется стандартно- слева ,и расположение полоски перед скроллом , а надо чтобы она была за ним ,то есть на самом краю экрана
И ещё - наверное следует повесить активацию этой функции на правую кнопочку мышки , а то в противном случае боковая панель будет выскакивать при любом нечаянном касании во время скроллинга
Отредактировано Крошка Ру (02-05-2013 21:17:22)
Отсутствует
bunda1
а как дополнительные символы вставить, что бы они отображались в несколько столбцов.
Я тоже бы хотел знать как это сделать
Отсутствует
Dumby
Но заметил что в режиме автоматического свёртывания, немного тормозит прокрутка на страницах, точнее говоря становится более грубой.
Если панель видна постоянно, тогда нормально.
Подтверждаю, каким то образом прокрутка становится какой-то дерганой.
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
Может кто-то помочь с моей просьбой по этой кнопке?http://forum.mozilla-russia.org/viewtop … 73#p5963731. Размещение этой панели справа.2. Анимация свёртывания.Хотя бы по первому.
Отредактировано neAdmin (02-05-2013 22:02:42)
Отсутствует
далее все просто делаем замену
var url=url.replace(/https/g,"http");
Эххх для меня далеко не просто это.
Отредактировано basilla (02-05-2013 22:59:41)
Отсутствует
basilla
Замена https на http не будет работать на всех сайтах.
Добавлено 02-05-2013 23:13:13
Попробуй Translate(Firefox 3.6 +)
Отредактировано bunda1 (02-05-2013 23:13:13)
Отсутствует
Кстати, кнопка открывающая страницу в другом браузере.
var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
file.initWithPath(IE_PATH);
if (!file.exists()) {
alert("File does not exist: " + IE_PATH);
return;
}
var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
try {
var args = [window.content.location.href];
process.init(file);
process.run(false, args, args.length);
}
catch (ex) {
alert("Failed to execute: " + IE_PATH);
}
Отредактировано Pony_Smile_Pack (02-05-2013 23:21:57)
Отсутствует
Я тоже бы хотел знать как это сделать
Тут вот LEX1 подсказал выход.
// Настройка функций кликов мыши ...........
this.onclick = function(e) {
if ( e.button == 0 ) menuPopup.showPopup(this, -1, -1, "popup", "bottomleft", "topleft");
};// Создать меню ............................
var array = [["☑", "☒"], ["☺", "☻", "☹"], "¤", "¦", "§", "©", "«", "»", "¬", "®", "°", "±", "µ", "¶", "—", "‘", "’", "“", "”", "•", "‰", "‹", "›", "™"];var node = document.getElementById(this.id + "-menuPopup");
if ( node && node.parentNode ) node.parentNode.removeChild(node); // блокировать дублирование менюvar menuPopup = document.getElementById("mainPopupSet").appendChild(document.createElement("menupopup"));
menuPopup.id = this.id + "-menuPopup";array.forEach(function(symbol) {
var menuItem, subMenu, subMenuItem;
if (typeof symbol == "object") {
menuItem = document.createElement("menu");
subMenu = document.createElement("menupopup");
for (var i = 0; i < symbol.length; i++) {
subMenuItem = document.createElement("menuitem");
subMenuItem.addEventListener("command", insertText, false);
subMenuItem.setAttribute("label", symbol[i] );
subMenuItem.style.fontSize = "14px"; // размер шрифта
subMenu.appendChild(subMenuItem);
};
menuItem.appendChild(subMenu);
menuItem.setAttribute("label", symbol[0] + "…" );
} else {
menuItem = document.createElement("menuitem");
menuItem.addEventListener("command", insertText, false);
menuItem.setAttribute("label", symbol );
};
menuItem.style.fontSize = "12px"; // размер шрифта
menuPopup.appendChild(menuItem);});
//this.type = "menu";// Ставить текст в текстовое поле ............
function insertText( text ) {
var text = this.label;
var cmd = "cmd_insertText";
var controller = document.commandDispatcher.getControllerForCommand(cmd);
if ( controller && controller.isCommandEnabled(cmd) ) {
var controller = controller.QueryInterface(Components.interfaces.nsICommandController);
var params = Components.classes["@mozilla.org/embedcomp/command-params;1"].createInstance(Components.interfaces.nsICommandParams);
params.setStringValue("state_data", text);
controller.doCommandWithParams(cmd, params);
}
};
Отсутствует
neAdmin
Отредактировано pohunohi (03-05-2013 15:03:21)
Отсутствует
повесить активацию этой функции на правую кнопочку мышки
Вот, вроде похоже
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%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOnp6Xva2tp709PTe9PT03vT09N709PTe9PT03vT09N709PTe9PT03va2tp76enpewAAAAAAAAAAAAAAAAAAAACjo6P/fHx8/3x8fP98fHz/fHx8/3x8fP98fHz/fHx8/3x8fP98fHz/fHx8/6Ojo/8AAAAAAAAAAAAAAAAAAAAAf39///Dw8P/s7Oz/7Ozs/+zs7P/s7Oz/7Ozs/+zs7P/s7Oz/7Ozs//Dw8P9/f3//AAAAAAAAAAAAAAAAAAAAAIGBgf/u7u7/6urq/+rq6v/q6ur/6urq/+rq6v/q6ur/6urq/+rq6v/u7u7/gYGB/wAAAAAAAAAAAAAAAAAAAACEhIT/8PDw/+3t7f/t7e3/7e3t/+3t7f/t7e3/7e3t/+3t7f/t7e3/8PDw/4SEhP8AAAAAAAAAAAAAAAAAAAAAh4eH//Pz8//w8PD/8PDw//Dw8P/w8PD/8PDw//Dw8P/w8PD/8PDw//Pz8/+Hh4f/AAAAAAAAAAAAAAAAAAAAAIqKiv/09PT/8vLy//Ly8v/y8vL/8vLy//Ly8v/y8vL/8vLy//Ly8v/09PT/ioqK/wAAAAAAAAAAAAAAAAAAAACOjo7/9/f3//T09P/09PT/9PT0//T09P/09PT/9PT0//T09P/09PT/9vb2/46Ojv8AAAAAAAAAAAAAAAAAAAAAkpKS//r6+v/5+fn/+fn5//j4+P/4+Pj/+Pj4//j4+P/39/f/9/f3//n5+f+SkpL/AAAAAAAAAAAAAAAAAAAAAJaWlv/7+/v/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/7+/v/lpaW/wAAAAAAAAAAAAAAAAAAAACZmZn//Pz8//v7+//7+/v/+/v7//v7+//7+/v/+fn5//b29v/19fX/+Pj4/5iYmP8AAAAAAAAAAAAAAAAAAAAAnJyc//39/f/8/Pz//Pz8//z8/P/8/Pz//Pz8//f39//u7u7/6+vr/+/v7/+enp7/AAAAAAAAAAAAAAAAAAAAAJ+fn//9/f3//f39//39/f/9/f3//f39//39/f/39/f/xMTE/8TExP/Jycn/ra2t/wAAAAAAAAAAAAAAAAAAAAChoaH//v7+//39/f/9/f3//f39//39/f/9/f3/+fn5/8nJyf/z8/P/s7Oz/9LS0v8AAAAAAAAAAAAAAAAAAAAApKSk///////+/v7//v7+//7+/v/+/v7//v7+//39/f/Pz8//tra2/83Nzf8AAAAAAAAAAAAAAAAAAAAAAAAAAMTExP+mpqb/pqam/6ampv+mpqb/pqam/6ampv+mpqb/t7e3/9bW1v8AAAAAAAAAAAAAAAAAAAAAwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAB6xBwA+sQQ%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bconst%20barWidth%20%3D%203%3B%0Aconst%20sidebarAutocloseDelay%20%3D%20500%3B%0Aconst%20data%20%3D%20%5B%0A%09toggleSB%2C%20%5B%22viewBookmarksSidebar%22%5D%2C%20%22red%22%2C%0A%09toggleSB%2C%20%5B%22viewHistorySidebar%22%5D%2C%20%22blue%22%2C%0A%09toggleSB%2C%20%5B%22viewStylishSidebar%22%5D%2C%20%22orange%22%2C%0A%09toggleSB%2C%20%5B%22viewConsoleSidebar%22%5D%2C%20%22gray%22%2C%0A%09al%2C%20%5B%22Done%22%5D%2C%20%22green%22%2C%0A%5D%3B%0Afunction%20al%28msg%29%20alert%28msg%29%3B%0A%0Avar%20list%3B%0Afunction%20listenEvents%28listen%29%20%7B%0A%09var%20func%20%3D%20listen%20%3F%20addEventListener%20%3A%20removeEventListener%3B%0A%09%5BsidebarBox%2C%20sidebarSplitter%2C%20rBox%5D.forEach%28function%28node%29%20%7B%0A%09%09func%28%22mouseover%22%2C%20onMouseover%2C%20false%2C%20node%29%3B%0A%09%09func%28%22mouseout%22%2C%20onMouseout%2C%20false%2C%20node%29%3B%0A%09%7D%29%3B%0A%09list%20%3D%20listen%3B%0A%7D%0Avar%20timeouts%20%3D%20%5B%5D%3B%0Afunction%20onMouseover%28%29%20%7B%0A%09timeouts.forEach%28function%28timeout%29%20clearTimeout%28timeout%29%29%3B%0A%09timeouts%20%3D%20%5B%5D%3B%0A%7D%0Afunction%20onMouseout%28%29%20%7B%0A%09if%20%28timeouts.length%29%20return%3B%0A%09timeouts.push%28%0A%09%09setTimeout%28function%28%29%20%7B%0A%09%09%09if%20%28sidebarBox.hidden%29%20return%3B%0A%09%09%09toggleSidebar%28%29%3B%0A%09%09%09listenEvents%28false%29%3B%0A%09%09%09moveSB%28false%29%3B%0A%09%09%7D%2C%20sidebarAutocloseDelay%29%0A%09%29%3B%0A%7D%0Avar%20left%20%3D%20true%3B%0Afunction%20moveSB%28right%29%20%7B%0A%09if%20%28right%29%20%7B%0A%09%09br.insertBefore%28sidebarBox%2C%20rBox%29%3B%0A%09%09br.insertBefore%28sidebarSplitter%2C%20sidebarBox%29%3B%0A%09%09left%20%3D%20false%3B%0A%09%7D%20else%20%7B%0A%09%09br.insertBefore%28sidebarSplitter%2C%20appcontent%29%3B%0A%09%09br.insertBefore%28sidebarBox%2C%20sidebarSplitter%29%3B%0A%09%09left%20%3D%20true%3B%0A%09%7D%0A%09if%20%28sidebarBox.hidden%29%20%7B%0A%09%09sidebarBox.style.visibility%20%3D%20%22collapse%22%3B%0A%09%09sidebarBox.hidden%20%3D%20false%3B%0A%09%09setTimeout%28function%28%29%20%7B%0A%09%09%09sidebarBox.hidden%20%3D%20true%3B%0A%09%09%09sidebarBox.style.visibility%20%3D%20%22visible%22%3B%0A%09%09%7D%2C%20200%29%3B%0A%09%7D%0A%7D%0Afunction%20toggleSB%28cmd%29%20%7B%0A%09if%20%28%21n%28cmd%29%29%20%7B%20alert%28%22Failed%3A%20%22%20+%20cmd%29%3B%20return%3B%20%7D%0A%09var%20fo%20%3D%20%28sidebarBox.getAttribute%28%22sidebarcommand%22%29%20%3D%3D%20cmd%29%20%26%26%20left%20%26%26%20%21sidebarBox.hidden%3B%0A%09toggleSidebar%28cmd%2C%20fo%29%3B%0A%0A%09var%20hidden%20%3D%20sidebarBox.hidden%3B%0A%09if%20%28%21hidden%20%26%26%20%21list%29%20listenEvents%28true%29%3B%0A%09if%20%28hidden%29%20listenEvents%28false%29%3B%0A%09if%20%28hidden%20%26%26%20%21left%29%20moveSB%28false%29%3B%0A%09if%20%28%21hidden%20%26%26%20left%29%20moveSB%28true%29%3B%0A%7D%0Afunction%20onCommand%28e%29%20%7B%0A%09var%20cmd%20%3D%20e.target.getAttribute%28%22oncommand%22%29%3B%0A%09if%20%28cmd.indexOf%28%22toggleSidebar%22%29%20%3C%200%29%20return%3B%0A%09if%20%28sidebarBox.hidden%20%26%26%20sidebarBox.nextSibling%20%3D%3D%20rBox%29%20%7B%0A%09%09listenEvents%28false%29%3B%0A%09%09moveSB%28false%29%3B%0A%09%7D%0A%7D%0AaddEventListener%28%22command%22%2C%20onCommand%2C%20false%2C%20window%29%3B%0A%0Aconst%20idp%20%3D%20%22cb-msb%22%3B%0Aconst%20br%20%3D%20n%28%22browser%22%29%3B%0Aconst%20sidebarBox%20%3D%20n%28%22sidebar-box%22%29%3B%0Aconst%20sidebarSplitter%20%3D%20n%28%22sidebar-splitter%22%29%3B%0Aconst%20appcontent%20%3D%20n%28%22appcontent%22%29%3B%0Aconst%20mbs%20%3D%20n%28%22mainBroadcasterSet%22%29%0A%0Afunction%20n%28id%29%20document.getElementById%28id%29%3B%0Afunction%20appendNode%28name%2C%20parent%2C%20attrs%29%20%7B%0A%09var%20node%20%3D%20document.createElement%28name%29%3B%0A%09for%20%28var%20attr%20in%20attrs%29%20node.setAttribute%28attr%2C%20attrs%5Battr%5D%29%3B%0A%09parent.appendChild%28node%29%3B%0A%09if%20%28name%20%3D%3D%20%22vbox%22%29%20node.style.width%20%3D%20barWidth%20+%20%22px%22%3B%0A%09return%20node%3B%0A%7D%0Avar%20rBox%20%3D%20appendNode%28%22vbox%22%2C%20br%2C%20%7B%0A%09id%3A%20idp%20+%20%22-rBox%22%2C%0A%09style%3A%20%22height%3A100%25%22%2C%0A%09onmouseover%3A%20%22event.target.style.opacity%20%3D%201%22%2C%0A%09onmouseout%3A%20%22event.target.style.opacity%20%3D%200.2%22%0A%7D%29%3B%0Afor%20%28var%20i%20%3D%200%2C%20l%20%3D%20data.length%3B%20i%20%3C%20l%3B%20i%20+%3D3%29%20%7B%0A%09var%20box%20%3D%20appendNode%28%22vbox%22%2C%20rBox%2C%20%7B%0A%09%09id%3A%20idp%20+%20%22-box%22%20+%20i%20/%203%2C%0A%09%09style%3A%20%22opacity%3A0.2%22%2C%0A%09%09flex%3A%201%2C%0A%09%09onclick%3A%20%22if%20%28event.button%20%3D%3D%202%29%20this.func.apply%28this%2C%20event.target.args%29%22%0A%09%7D%29%3B%0A%09box.func%20%3D%20data%5Bi%5D%3B%0A%09box.args%20%3D%20data%5Bi%20+%201%5D%3B%0A%09box.style.backgroundColor%20%3D%20data%5Bi%20+%202%5D%3B%0A%09box.style.height%20%3D%20Math.round%283%20*%20100%20/%20l%29%20+%20%22%25%22%3B%0A%7D%0Avar%20brc%20%3D%20n%28%22viewConsoleSidebar%22%29%3B%0Aif%20%28%21brc%29%20%7B%0A%09brc%20%3D%20appendNode%28%22broadcaster%22%2C%20mbs%2C%20%7B%0A%09%09id%3A%20%22viewConsoleSidebar%22%2C%0A%09%09autoCheck%3A%20false%2C%0A%09%09type%3A%20%22checkbox%22%2C%0A%09%09group%3A%20%22sidebar%22%2C%0A%09%09label%3A%20%22Console%22%2C%0A%09%09sidebarurl%3A%20%22chrome%3A//global/content/console.xul%22%2C%0A%09%09oncommand%3A%20%27toggleSidebar%28%22viewConsoleSidebar%22%29%27%0A%09%7D%29%3B%0A%7D%0Athis.onDestroy%20%3D%20function%28reason%29%20%7B%0A%09if%20%28sidebarBox.nextSibling%20%3D%3D%20rBox%29%20moveSB%28false%29%3B%0A%09if%20%28n%28idp%20+%20%22-rBox%22%29%29%20br.removeChild%28rBox%29%3B%0A%09listenEvents%28false%29%3B%0A%09if%20%28n%28%22viewConsoleSidebar%22%29%29%20mbs.removeChild%28brc%29%3B%0A%7D%3B%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%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
Отсутствует
Вот, вроде похоже
Dumby , Спасибо - прикольно получилось Готовый шаблон для индивидуального наполнения
А можно клик правой кнопочкой только бы активировал панель для касаний курсора - чтобы не приходилось кликать по каждому сегменту
-----------
Вообще пространство за скроллом почему-то почти не используют, а ведь в этих сегментах много чего можно разместить - как отдельные кнопочки, так и целые панели - вертикальные и горизонтальные , окошки всякие разные ...
Отредактировано Крошка Ру (03-05-2013 19:53:13)
Отсутствует
Крошка Ру
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%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOnp6Xva2tp709PTe9PT03vT09N709PTe9PT03vT09N709PTe9PT03va2tp76enpewAAAAAAAAAAAAAAAAAAAACjo6P/fHx8/3x8fP98fHz/fHx8/3x8fP98fHz/fHx8/3x8fP98fHz/fHx8/6Ojo/8AAAAAAAAAAAAAAAAAAAAAf39///Dw8P/s7Oz/7Ozs/+zs7P/s7Oz/7Ozs/+zs7P/s7Oz/7Ozs//Dw8P9/f3//AAAAAAAAAAAAAAAAAAAAAIGBgf/u7u7/6urq/+rq6v/q6ur/6urq/+rq6v/q6ur/6urq/+rq6v/u7u7/gYGB/wAAAAAAAAAAAAAAAAAAAACEhIT/8PDw/+3t7f/t7e3/7e3t/+3t7f/t7e3/7e3t/+3t7f/t7e3/8PDw/4SEhP8AAAAAAAAAAAAAAAAAAAAAh4eH//Pz8//w8PD/8PDw//Dw8P/w8PD/8PDw//Dw8P/w8PD/8PDw//Pz8/+Hh4f/AAAAAAAAAAAAAAAAAAAAAIqKiv/09PT/8vLy//Ly8v/y8vL/8vLy//Ly8v/y8vL/8vLy//Ly8v/09PT/ioqK/wAAAAAAAAAAAAAAAAAAAACOjo7/9/f3//T09P/09PT/9PT0//T09P/09PT/9PT0//T09P/09PT/9vb2/46Ojv8AAAAAAAAAAAAAAAAAAAAAkpKS//r6+v/5+fn/+fn5//j4+P/4+Pj/+Pj4//j4+P/39/f/9/f3//n5+f+SkpL/AAAAAAAAAAAAAAAAAAAAAJaWlv/7+/v/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/7+/v/lpaW/wAAAAAAAAAAAAAAAAAAAACZmZn//Pz8//v7+//7+/v/+/v7//v7+//7+/v/+fn5//b29v/19fX/+Pj4/5iYmP8AAAAAAAAAAAAAAAAAAAAAnJyc//39/f/8/Pz//Pz8//z8/P/8/Pz//Pz8//f39//u7u7/6+vr/+/v7/+enp7/AAAAAAAAAAAAAAAAAAAAAJ+fn//9/f3//f39//39/f/9/f3//f39//39/f/39/f/xMTE/8TExP/Jycn/ra2t/wAAAAAAAAAAAAAAAAAAAAChoaH//v7+//39/f/9/f3//f39//39/f/9/f3/+fn5/8nJyf/z8/P/s7Oz/9LS0v8AAAAAAAAAAAAAAAAAAAAApKSk///////+/v7//v7+//7+/v/+/v7//v7+//39/f/Pz8//tra2/83Nzf8AAAAAAAAAAAAAAAAAAAAAAAAAAMTExP+mpqb/pqam/6ampv+mpqb/pqam/6ampv+mpqb/t7e3/9bW1v8AAAAAAAAAAAAAAAAAAAAAwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAA6xBwAOsQcADrEHAB6xBwA+sQQ%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bconst%20barWidth%20%3D%203%3B%0Aconst%20sidebarAutocloseDelay%20%3D%20500%3B%0Aconst%20data%20%3D%20%5B%0A%09toggleSB%2C%20%5B%22viewBookmarksSidebar%22%5D%2C%20%22red%22%2C%0A%09toggleSB%2C%20%5B%22viewHistorySidebar%22%5D%2C%20%22blue%22%2C%0A%09toggleSB%2C%20%5B%22viewStylishSidebar%22%5D%2C%20%22orange%22%2C%0A%09toggleSB%2C%20%5B%22viewConsoleSidebar%22%5D%2C%20%22gray%22%2C%0A%09al%2C%20%5B%22Done%22%5D%2C%20%22green%22%0A%5D%3B%0Afunction%20al%28msg%29%20alert%28msg%29%3B%0A%0Avar%20list%3B%0Afunction%20listenEvents%28listen%29%20%7B%0A%09var%20func%20%3D%20listen%20%3F%20addEventListener%20%3A%20removeEventListener%3B%0A%09%5BsidebarBox%2C%20sidebarSplitter%2C%20rBox%5D.forEach%28function%28node%29%20%7B%0A%09%09func%28%22mouseover%22%2C%20onMouseover%2C%20false%2C%20node%29%3B%0A%09%09func%28%22mouseout%22%2C%20onMouseout%2C%20false%2C%20node%29%3B%0A%09%7D%29%3B%0A%09list%20%3D%20listen%3B%0A%7D%0Avar%20timeouts%20%3D%20%5B%5D%3B%0Afunction%20onMouseover%28%29%20%7B%0A%09timeouts.forEach%28function%28timeout%29%20clearTimeout%28timeout%29%29%3B%0A%09timeouts%20%3D%20%5B%5D%3B%0A%7D%0Afunction%20onMouseout%28%29%20%7B%0A%09if%20%28timeouts.length%29%20return%3B%0A%09timeouts.push%28%0A%09%09setTimeout%28function%28%29%20%7B%0A%09%09%09if%20%28sidebarBox.hidden%29%20return%3B%0A%09%09%09toggleSidebar%28%29%3B%0A%09%09%09listenEvents%28false%29%3B%0A%09%09%09moveSB%28false%29%3B%0A//%09%09%09rBox.a%20%3D%20false%3B%0A%09%09%7D%2C%20sidebarAutocloseDelay%29%0A%09%29%3B%0A%7D%0Avar%20left%20%3D%20true%3B%0Afunction%20moveSB%28right%29%20%7B%0A%09if%20%28right%29%20%7B%0A%09%09br.insertBefore%28sidebarBox%2C%20rBox%29%3B%0A%09%09br.insertBefore%28sidebarSplitter%2C%20sidebarBox%29%3B%0A%09%09left%20%3D%20false%3B%0A%09%7D%20else%20%7B%0A%09%09br.insertBefore%28sidebarSplitter%2C%20appcontent%29%3B%0A%09%09br.insertBefore%28sidebarBox%2C%20sidebarSplitter%29%3B%0A%09%09left%20%3D%20true%3B%0A%09%7D%0A%09if%20%28sidebarBox.hidden%29%20%7B%0A%09%09sidebarBox.style.visibility%20%3D%20%22collapse%22%3B%0A%09%09sidebarBox.hidden%20%3D%20false%3B%0A%09%09setTimeout%28function%28%29%20%7B%0A%09%09%09sidebarBox.hidden%20%3D%20true%3B%0A%09%09%09sidebarBox.style.visibility%20%3D%20%22visible%22%3B%0A%09%09%7D%2C%20200%29%3B%0A%09%7D%0A%7D%0Afunction%20toggleSB%28cmd%29%20%7B%0A%09if%20%28%21n%28cmd%29%29%20%7B%20alert%28%22Failed%3A%20%22%20+%20cmd%29%3B%20return%3B%20%7D%0A%09var%20fo%20%3D%20%28sidebarBox.getAttribute%28%22sidebarcommand%22%29%20%3D%3D%20cmd%29%20%26%26%20left%20%26%26%20%21sidebarBox.hidden%3B%0A%09toggleSidebar%28cmd%2C%20fo%29%3B%0A%0A%09var%20hidden%20%3D%20sidebarBox.hidden%3B%0A%09if%20%28%21hidden%20%26%26%20%21list%29%20listenEvents%28true%29%3B%0A%09if%20%28hidden%29%20listenEvents%28false%29%3B%0A%09if%20%28hidden%20%26%26%20%21left%29%20moveSB%28false%29%3B%0A%09if%20%28%21hidden%20%26%26%20left%29%20moveSB%28true%29%3B%0A//%09if%20%28hidden%29%20rBox.a%20%3D%20false%3B%0A%7D%0Afunction%20onCommand%28e%29%20%7B%0A%09var%20cmd%20%3D%20e.target.getAttribute%28%22oncommand%22%29%3B%0A%09if%20%28cmd.indexOf%28%22toggleSidebar%22%29%20%3C%200%29%20return%3B%0A%09if%20%28sidebarBox.hidden%20%26%26%20sidebarBox.nextSibling%20%3D%3D%20rBox%29%20%7B%0A%09%09listenEvents%28false%29%3B%0A%09%09moveSB%28false%29%3B%0A//%09%09rBox.a%20%3D%20false%3B%0A%09%7D%0A%7D%0AaddEventListener%28%22command%22%2C%20onCommand%2C%20false%2C%20window%29%3B%0A%0Aconst%20idp%20%3D%20%22cb-msb%22%3B%0Aconst%20br%20%3D%20n%28%22browser%22%29%3B%0Aconst%20sidebarBox%20%3D%20n%28%22sidebar-box%22%29%3B%0Aconst%20sidebarSplitter%20%3D%20n%28%22sidebar-splitter%22%29%3B%0Aconst%20appcontent%20%3D%20n%28%22appcontent%22%29%3B%0Aconst%20mbs%20%3D%20n%28%22mainBroadcasterSet%22%29%0A%0Afunction%20n%28id%29%20document.getElementById%28id%29%3B%0Afunction%20appendNode%28name%2C%20parent%2C%20attrs%29%20%7B%0A%09var%20node%20%3D%20document.createElement%28name%29%3B%0A%09for%20%28var%20attr%20in%20attrs%29%20node.setAttribute%28attr%2C%20attrs%5Battr%5D%29%3B%0A%09parent.appendChild%28node%29%3B%0A%09if%20%28name%20%3D%3D%20%22vbox%22%29%20node.style.width%20%3D%20barWidth%20+%20%22px%22%3B%0A%09return%20node%3B%0A%7D%0Avar%20rBox%20%3D%20appendNode%28%22vbox%22%2C%20br%2C%20%7B%0A%09id%3A%20idp%20+%20%22-rBox%22%2C%0A%09style%3A%20%22height%3A100%25%22%2C%0A%09onmouseover%3A%20%22event.target.style.opacity%20%3D%201%22%2C%0A%09onmouseout%3A%20%22event.target.style.opacity%20%3D%200.2%22%2C%0A%09onclick%3A%20%22if%20%28event.button%20%21%3D%202%29%20return%3B%20this.a%20%3D%20%21this.a%22%0A//%09+%20%22%3B%20if%20%28this.a%29%20event.target.func.apply%28this%2C%20event.target.args%29%22%0A%7D%29%3B%0ArBox.a%20%3D%20false%3B%0Afor%20%28var%20i%20%3D%200%2C%20l%20%3D%20data.length%3B%20i%20%3C%20l%3B%20i%20+%3D3%29%20%7B%0A%09var%20box%20%3D%20appendNode%28%22vbox%22%2C%20rBox%2C%20%7B%0A%09%09id%3A%20idp%20+%20%22-box%22%20+%20i%20/%203%2C%0A%09%09style%3A%20%22opacity%3A0.2%22%2C%0A%09%09flex%3A%201%2C%0A%09%09onmouseenter%3A%20%22if%20%28this.parentNode.a%29%20this.func.apply%28this%2C%20event.target.args%29%22%0A%09%7D%29%3B%0A%09box.func%20%3D%20data%5Bi%5D%3B%0A%09box.args%20%3D%20data%5Bi%20+%201%5D%3B%0A%09box.style.backgroundColor%20%3D%20data%5Bi%20+%202%5D%3B%0A%09box.style.height%20%3D%20Math.round%283%20*%20100%20/%20l%29%20+%20%22%25%22%3B%0A%7D%0Avar%20brc%20%3D%20n%28%22viewConsoleSidebar%22%29%3B%0Aif%20%28%21brc%29%20%7B%0A%09brc%20%3D%20appendNode%28%22broadcaster%22%2C%20mbs%2C%20%7B%0A%09%09id%3A%20%22viewConsoleSidebar%22%2C%0A%09%09autoCheck%3A%20false%2C%0A%09%09type%3A%20%22checkbox%22%2C%0A%09%09group%3A%20%22sidebar%22%2C%0A%09%09label%3A%20%22Console%22%2C%0A%09%09sidebarurl%3A%20%22chrome%3A//global/content/console.xul%22%2C%0A%09%09oncommand%3A%20%27toggleSidebar%28%22viewConsoleSidebar%22%29%27%0A%09%7D%29%3B%0A%7D%0Athis.onDestroy%20%3D%20function%28%29%20%7B%0A%09if%20%28sidebarBox.nextSibling%20%3D%3D%20rBox%29%20moveSB%28false%29%3B%0A%09if%20%28n%28idp%20+%20%22-rBox%22%29%29%20br.removeChild%28rBox%29%3B%0A%09listenEvents%28false%29%3B%0A%09if%20%28n%28%22viewConsoleSidebar%22%29%29%20mbs.removeChild%28brc%29%3B%0A%7D%3B%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%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
Отсутствует
Отсутствует
Прошу помочь. Недавно перешел на работу с Thunderbird 17.0.5. Есть желание перенести некоторые команды главного меню на кнопки в панель инструментов с помощью CB. Однако нигде не нашел примеров того как это можно сделать (примеров кода).
Если не прав - ткните носом. Если прав, то буду признателен за подсказку как это сделать (хотя бы направление).
Отсутствует
Может кто помочь с кнопкой для выбора селекторов, как в Attribute Inspector'e? Т.е. нажимаем кнопку выбираем селектор для next, потом для content, потом для hidden, но нужно для hidden выбирать до тех пор, пока не нажмешь esc, т.е. чтобы была возможность выбрать несколько элементов, а если сразу нажать esc, то вообще не создавать строку hidden. Потом все это копируем в буфер обмена в таком виде:
{ title: 'Google Search', url: 'http*://www.google.com/search?*', next: '#pnnext', content: '#center_col, #foot', hidden: '#topstuff:not(.lp-first), ' + '#extrares:not(.lp-first), ' + '#foot:not(.lp-last) #xjs ~ *', },
Значение title можно брать прям из заголовка вкладки, а url берем домен и добавляем *. В идеале бы добавлять все это в нужный файл, но пока можно и в буфер. Кто поможет?
Отсутствует
Отсутствует
Подскажите пожалуйста: можно как-то сделать копку для , чтобы сжимать почтовые базы (наподобие Vacuum очистка баз Firefox и Brief такой)?
Отсутствует
Может кто знает, можно на жест кнопки Mouse Gestures повесить открытие такого меню.
Отредактировано villa7 (08-05-2013 18:09:58)
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
villa7
document.getElementById("toolbar-context-menu").openPopup(null,"",event.clientX,event.clientY,false,false);
Отсутствует
bunda1
Как удобно стало однако, спасибо. Вот только эргономики ради переместить бы окно из левого угла в правый, сам пыжился чёто там подставлять, никак не хочет.
Лучше спросить у знающих - чем лезть не зная.
Отсутствует