Что за пункт, в кнопке Save или где?
Да, именно в ней, okkamas_knife чуть выше дал код для пункта "Сохранить всю страницу как PNG", чтобы сохраняло без пустой области на месте скроллбара.
Добавлено 02-10-2013 14:52:00
что для видимой что для всей страницы приведённый кусок указывает ширину
если там другой код то ищи сам где там определяется ширина фрагмента и исправляй
Точно мозг вечером не включался
Отредактировано Kamui (02-10-2013 14:52:00)
Отсутствует
Sekotkaкогда напишешь внятно и чётко вопрос тогда и будет помощь.тратить время на гадание что именно ты хочешь и из чего получать никто не будет.хочешь помощи - формулируй чётко техзадание, если не уверен что поймут правильно добавь примерычтобыло и что должно получиться.
Так в последнем моем сообщении именно так, написано что получилось, а что должно было быть. Все понятно и именно так, как вы написали нужно формулировать. На примерах, посмотрите пожалуйста еще раз мое сообщение, на которое указана ссылка.
Отсутствует
bunda1 пишетЕсли в кнопке которое открывает меню есть строка this.type = "menu-button" код кнопки инициализируется два раза и все обработчики дублируются.
Если мне память не изменяет, так было всегда. Когда меняется тип кнопки, меняется привязка и срабатывает её конструктор.
Да но обработчики дублируются и addDestructor не помогает, проверь:
this.type = "menu-button"; function c() { alert('') }; addEventListener("click", c, false, gBrowser ); addDestructor(function() { removeEventListener("click", c, false, gBrowser ) });
Добавлено 02-10-2013 20:42:39
bunda1 пишетЧто за пункт, в кнопке Save или где?
Да, именно в ней, okkamas_knife чуть выше дал код для пункта "Сохранить всю страницу как PNG", чтобы сохраняло без пустой области на месте скроллбара.
Ну и как удалось изменить кнопку?
Отредактировано bunda1 (02-10-2013 20:42:39)
Отсутствует
bunda1
// Настройка функций кликов мыши для кнопки ........ this.onclick = function(e) { if ( e.button == 0 ) savePageInPNG(); // ЛКМ if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) gShowPopup(this); // ПКМ }; // Сохранить всю страницу как PNG ........ function savePageInPNG() { var canvas = document.createElementNS("http://www.w3.org/1999/xhtml", "canvas"); // canvas.width = Math.min(content.innerWidth + content.scrollMaxX, 32766); canvas.width = window.content.document.getElementsByTagName('body')[0].scrollWidth; canvas.height = Math.min(content.innerHeight + content.scrollMaxY, 32766); var context = canvas.getContext("2d"); context.drawWindow(content, 0, 0, canvas.width, canvas.height, "white"); var uri = makeURI(canvas.toDataURL("image/png")); var fp = Cc['@mozilla.org/filepicker;1'].createInstance(Ci.nsIFilePicker); fp.init(window, "Save Screenshot As", fp.modeSave); fp.appendFilter("", "*.png"); fp.appendFilters(fp.filterImages | fp.filterAll); fp.defaultExtension = "png"; fp.defaultString = content.document.title + ".png"; if (fp.show() == fp.returnCancel || !fp.file) return; Cc['@mozilla.org/embedding/browser/nsWebBrowserPersist;1'] .createInstance(Ci.nsIWebBrowserPersist) .saveURI(uri, null, null, null, null, fp.file, null); };
Браузер должен сам решать свои проблемы, а не возлагать их на пользователей. Minor
Отсутствует
Да но обработчики дублируются и addDestructor не помогает, проверь:
Деструкторы срабатывают при удалении кнопки, тут тоже вроде ничего нового.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
W@ld_Lii
Спасибо.
Добавлено 02-10-2013 22:29:46
bunda1 пишетДа но обработчики дублируются и addDestructor не помогает, проверь:
Деструкторы срабатывают при удалении кнопки, тут тоже вроде ничего нового.
Дело в том что в кнопке с this.type = "menu-button"; при открытии настройки панелей обработчики в кнопке дублируются и это ни как не блокируется.
Ладно буду использовать фикс от Dumby
this.type = "menu-button"; if (!this.hasAttribute("initialized")) this.init = Function();
Отредактировано bunda1 (02-10-2013 22:30:46)
Отсутствует
при открытии настройки панелей обработчики в кнопке дублируются и это ни как не блокируется.
После редактирования кнопки, обработчики, установленные с помощью addEventListener не удаляются, есть что-то такое, буду смотреть.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Iczer
Попробуй
const name = "Book Name"; const sidebar = document.getElementById("sidebar"), win = sidebar.contentWindow, state = Application.prefs.getValue("scrapbook.data.title", "") == name; win.location == "chrome://scrapbook/content/scrapbook.xul" ? state ? toggleSidebar("viewScrapBookSidebar") : setBook() : toggleSidebar("viewScrapBookSidebar") || state || sidebar.addEventListener("load", function load() setBook(sidebar.removeEventListener("load", load, true)) , true) ; function setBook() { win.sbMultiBookUI.initMenu(); var popup = win.document.getElementById("mbMenuPopup"); var menuitem = win.document.getElementById("mbMenuItemDefault"); Array.some(popup.childNodes, function(node) node.label == name ? menuitem = node : false); win.sbMultiBookUI.change(menuitem); }
Отредактировано Dumby (07-10-2013 15:08:58)
Отсутствует
Iczer
Попробуй...
сделал две кнопки с разными именами
при нажатии любой из них выскакивает выбранная сейчас в мулльти-скрапбук книга (одна и та же)
да, имена соответствуют имеющимся книгам
Отредактировано Iczer (07-10-2013 20:34:06)
Отсутствует
Iczer
у меня - если ScrapBook 1.5.8, то всё ОК.
Если вдруг у тебя ScrapBook Plus 1.9.24.40.b1,
то попробуй заменить (в двух местах)
sbMultiBookUI на sbMultiBookService
если нет, то извиняй и не обессудь,
попытался сделать всё, что смог
Отсутствует
Все еще надеюсь на помощь по этому вопросу:
forum.mozilla-russia.org/viewtopic.php? … 91#p628191
Корректировка:
http://forum.mozilla-russia.org/viewtop … 78#p628278
Спасибо!
Отсутствует
Iczer
у меня - если ScrapBook 1.5.8, то всё ОК.Если вдруг у тебя ScrapBook Plus 1.9.24.40.b1,
то попробуй заменить (в двух местах)
sbMultiBookUI на sbMultiBookServiceесли нет, то извиняй и не обессудь,
попытался сделать всё, что смог
Всё получилось! Спасибо!
Отсутствует
Sekotka
var url = content.location.href; function yandexRuSearch() { var searchUrl = "http://yandex.ru/yandsearch?text="; var urlPrefix = "url:"; var urlNoHTTP = url.replace(/^(ht|f)tps?:\/\//, ""); var urlNoWWW = urlNoHTTP.replace(/^(w{3}[0-9]?\.)?/, ""); //var urlLink = searchUrl + urlPrefix + encodeURIComponent(urlNoHTTP) + " | " + urlPrefix + encodeURIComponent(urlNoWWW); var urlLink = searchUrl + urlPrefix + encodeURIComponent(urlNoHTTP); if (urlNoHTTP != urlNoWWW) urlLink += " | " + urlPrefix + encodeURIComponent(urlNoWWW); gBrowser.loadOneTab(urlLink, { relatedToCurrent: true, inBackground: false }); } if (url && /^(ht|f)tps?:\/\/.*/.test(url)) yandexRuSearch();
Отсутствует
Чуть ранее мне любезно помогли составить вот такой код для отображения нового субменю в меню кнопки Firefox. на версии 24 он перестал работать т.е при нажатии на пункт менб ничего не происходит. Помогите исправить пожалуйста.
var menuId = "Google";
var menuItem, menuPopup, menu = document.getElementById(menuId);
if (menu) {
contextMenu.removeChild(menu.previousElementSibling);
contextMenu.removeChild(menu);
};
menuPopup = document.createElement("menupopup");
menu = document.createElement("menu");
menu.setAttribute("id", menuId);
menu.setAttribute("label", "Google");
menu.setAttribute("class", "menu-iconic");
menu.setAttribute("image", Google);
for (var i = 0; i < itemsArr.length; i++) {
if (itemsArr[i]) {
menuItem = document.createElement("menuitem");
menuItem.setAttribute("label", itemsArr[i][0]);
menuItem.addEventListener("command", (function(f){return function(){content.document.location.href = "javascript:(" + f + ")()"}})(itemsArr[i][1].toString()), false);
} else {
menuItem = document.createElement("menuseparator");
};
menuPopup.appendChild(menuItem);
};
menu.appendChild(menuPopup);
contextMenu.insertBefore(menu, nextEleMenu);
contextMenu.insertBefore(document.createElement("menuseparator"), nextEleMenu);
/* Google */
Отредактировано Kiril__777 (08-10-2013 14:28:33)
Отсутствует
Чуть ранее мне любезно помогли составить вот такой код для отображения нового субменю в меню кнопки Firefox. на версии 24 он перестал работать т.е при нажатии на пункт менб ничего не происходит. Помогите исправить пожалуйста.
// Добавить новый пункт "Искать страницу" в меню kнопки "Firefox", от 08.10.2013. ................................ (function () { var img = "data:image/x-icon;base64,AAABAAEAEhAAAAEAGADoAwAAFgAAACgAAAASAAAAIAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADx9vm0y9y40OC50OG40OG40OG40OG40OG40OG40d68z+yuz8a34qYAAAAAAAAAAAAAAAAEkQAAANLl9Dya11Oo2Eqg0kyh00uh0kqg0kyf0kqgzkqYzz2MrRexIxfFA6PhpQAAAAAAAAAAAASRAAAA1Of4Sq3rXKLUYqjeYajeY6vgZq7kYqrcYaHYSoasI7wsMPMqLu8yHdUdrOCqAAAAAAAABJEAAADU5/dGp+VireB4xfx2xPpyvvNprt5ss+pgpcsmwjct8iYz7DU17DM58zcl2SSu464AAAAEkQAAANTo+Eio5mOr33XA93bE+WWs3HOu0V6jyS6+PWvwXHPvdUDuQDfuNWryaXXwdDLOM7DnsQSRAAAA1Oj4RqfmZK3gesj8dsX4d8f5e8n7arncPbNzKKNMZdtiX/dfR/FDl/KWWMNYe9R7v+u/BJEAAADW5/hFqOZ0uuKc3PiU1/aU2PaV1/SU1fGZxv9aop1a21d2+3Vg9WSW8peA04EAAAAAAAAEkQAAANTm9kuv63TD8Gy46W+76m666m+762286W+z5ziVh2fYXLr7ran2npXolm/ObgAAAAAAAASRAAAA1Ob3SaznWqPSXanZXanZXqvaYa3eYKzbXqbZUKW0R8JpPbZzRbp4a81oo+CjAAAAAAAABJEAAADV5/hGqOVmteOA1f990v980fx0xe91zfl/2f9/1/+d3Pxgt/Jsvv8AAAAAAAAAAAAAAAAEkQAAANTn90eq5WW14nzS/X3U/2q34XazzHvG73bP/XnS/ZLb9F225Wq+8QAAAAAAAAAAAAAAAASRAAAA0+f3SKrlZbfletX/edH/d9D9gtv+gdn/etT/edf/lN36W7foa772AAAAAAAAAAAAAAAABJEAAADW6PhEqOd/wOCk5PqX2/ea3viY3PeY3faZ3/ia3/ig2/Rctelsv/cAAAAAAAAAAAAAAAAEkQAAAM/k9kuv6nnE63O/7XPA7XPA7nTA7XXA7XO/7XTA7HK+7GnC8Ge79QAAAAAAAAAAAAAAAASRAAAA3u34ccDvoOb8n+P7oOT8oOT8oOT8oOT8oeT8n+T8pOf9jdn5jMn1AAAAAAAAAAAAAAAABJEAAAAAAADB4vtRtvRbv/dZvvZZvvZavvdavvZavvZcwPZXvfZ3w/YAAAAAAAAAAAAAAAAAAAAEkYADwEGAAcBBgADAQYAAQEGAAABBgAAAQYAAwEGAAMBBgADAQYADwEGAA8BBgAPAQYADwEGAA8BBgAPAQcAHwEE="; var array = [ ["в кэше Google", function() gBrowser.selectedTab = gBrowser.addTab('http://www.google.com/search?q=cache:' + content.location) ], ["на Archive.org", function() gBrowser.selectedTab = gBrowser.addTab('http://web.archive.org/web/*/' + content.location) ], ]; var appMenu = document.getElementById("appmenuSecondaryPane"); var appHelp = document.getElementById("appmenu_help"); var menuPopup = document.createElement("menupopup"); var menu = document.createElement("menu"); menu.setAttribute("label", "Искать страницу"); menu.setAttribute("class", "menu-iconic"); menu.setAttribute("image", img ); array.forEach(function( m ) { var menuItem = document.createElement("menuitem"); menuItem.setAttribute("label", m[0] ); menuItem.addEventListener("command", m[1] ); menuPopup.appendChild( menuItem ); }); menu.appendChild( menuPopup ); appMenu.insertBefore( menu, appHelp ); appMenu.insertBefore( document.createElement("menuseparator"), appHelp ); addDestructor(function() { appMenu.removeChild( menu.nextSibling ); appMenu.removeChild( menu ); }); })();
Отредактировано bunda1 (08-10-2013 17:41:48)
Отсутствует
Привет всем, столкнулся с проблемой что совсем не знаю как настроить код.
Если кто может помочь отпишитесь, буду благодарен (я хочу улучшить сборочку для Quake Live
Нужно несколько кнопок которые имитируют стандартные пункты меню из Firefox 3.6.25
а именно открывание окошек
Открыть адрес
Настройки
Параметры соединения (это с настроек сети, прокси раздел)
и 1ну дополнительную кнопку с аддона Chatzilla - Cам запуск этого чата (Инструменты => ChatZilla)
Отредактировано lmiol (08-10-2013 18:58:08)
Отсутствует
Sekotka
Выделить кодКод:
var url = content.location.href; function yandexRuSearch() { var searchUrl = "http://yandex.ru/yandsearch?text="; var urlPrefix = "url:"; var urlNoHTTP = url.replace(/^(ht|f)tps?:\/\//, ""); var urlNoWWW = urlNoHTTP.replace(/^(w{3}[0-9]?\.)?/, ""); //var urlLink = searchUrl + urlPrefix + encodeURIComponent(urlNoHTTP) + " | " + urlPrefix + encodeURIComponent(urlNoWWW); var urlLink = searchUrl + urlPrefix + encodeURIComponent(urlNoHTTP); if (urlNoHTTP != urlNoWWW) urlLink += " | " + urlPrefix + encodeURIComponent(urlNoWWW); gBrowser.loadOneTab(urlLink, { relatedToCurrent: true, inBackground: false }); } if (url && /^(ht|f)tps?:\/\/.*/.test(url)) yandexRuSearch();
Спасибо большое! Отлично работает, если изначально сайт с www., если же без www, то вставляет только поле url:site.ru/ (вместо того чтобы вставлять url:www.site.ru/ | url:site.ru/) Как этот небольшой нюанс исправить, не подскажете? Спасибо!
Отсутствует
bunda1
спасибо. ваш код работает, но! вдруг заработал и прежний вариант, странно..
Отсутствует
Нужно несколько кнопок которые имитируют стандартные пункты меню из Firefox 3.6.25
а именно открывание окошек
Открыть адрес
Настройки
Параметры соединения (это с настроек сети, прокси раздел)
Тут поищи Готовые кнопки для Custom Buttons | Форум Mozilla Россия
Отсутствует
lmiol пишет: Нужно несколько кнопок которые имитируют стандартные пункты меню из Firefox 3.6.25а именно открывание окошекОткрыть адресНастройкиПараметры соединения (это с настроек сети, прокси раздел)Тут поищи Готовые кнопки для Custom Buttons | Форум Mozilla Россия
cпасибище
Отсутствует
Тут поищи Готовые кнопки для Custom Buttons | Форум Mozilla Россия
к сожалению там нет стандартных как мне нужно было.
у меняпроблема намного проще чем те что там описаны:
Т.е. как я писал выше
Нужно несколько кнопок которые имитируют стандартные пункты меню из Firefox 3.6.25
а именно открывание окошек
Открыть адрес
Настройки
Параметры соединения (это с настроек сети, прокси раздел)
и 1ну дополнительную кнопку с аддона Chatzilla - Cам запуск этого чата (Инструменты => ChatZilla)
нужно чтобы вместо пунктов меню были готовые кнопки которые исполняют теже функции
К примеру вот
http://img547.imageshack.us/img547/9631/anc2.png
Чтобы вместо "Открыть адрес" была кнопка которая открывает тоже самое окно (которое нарисовано справа)
Отредактировано lmiol (09-10-2013 20:32:57)
Отсутствует
Нужно несколько кнопок которые имитируют стандартные пункты меню из Firefox 3.6.25
а именно открывание окошек
Настройки
Параметры соединения (это с настроек сети, прокси раздел)
А ты просмотрел там все страницы, здесь Настройки( Firefox ) и здесь Proxy смотрел?
Добавлено 09-10-2013 21:30:34
нужно чтобы вместо пунктов меню были готовые кнопки которые исполняют теже функции
К примеру вот
http://img547.imageshack.us/img547/9631/anc2.png
Чтобы вместо "Открыть адрес" была кнопка которая открывает тоже самое окно (которое нарисовано справа)
Это же ужасно не удобно, используй адресную строку!
Отредактировано bunda1 (09-10-2013 21:31:11)
Отсутствует
Это же ужасно не удобно, используй адресную строку!
а это и не браузер получается а больше приложение, а открытие ссылки я оставляю потому что раз в году случается что нужно открыть ссылку.
ктомуже о вкусах не спорят. (ярким примером является версия файерфокса под ником каждого на этом форуме)
за настройки няшное спасямб ) а вот прокси открывается в новой вкладке а не отдельном окошке
вроде оба кода не очень сложные мб сам разберусь ))
Отредактировано lmiol (09-10-2013 23:14:11)
Отсутствует