Нет, пользоваться закладкой, а не списком. Разместив её в удобном месте.
А возможно исправить Кнопку истории (Firefox) ?... чтобы она работала как заявлено), просто с её помощью - "Средний клик мышью - Открывает весь журнал посещений в отдельном окне.", что иногда тоже необходимо для поиска по имени...
Добавлено 01-12-2013 03:00:00
Жаль, что невозможно)... придется двумя кнопочками пользоваться)... За закладку спасибо...
Отредактировано Владимир... (01-12-2013 03:27:10)
Отсутствует
// Открывать всё в новых вкладках, от 17.11.2013
вот спасибо! заодно вроде как решил свою проблему, добавив к
своё
в трёх местах - вроде как работает: если открыт Fast Dial (а он у меня открывается в новом пустом табе вместо about:newtab), то адрес из урлбара открывается в текущей пустой вкладке, иначе в новой.
Отсутствует
А для Visrus Total кнопочки нет? Стоит расширение Virus Total Scan Url, но маленько не тот функционал что хочется. А хочется два окошка для ссылки и для файла. А если мечтать по полной, ЛКМ - файлы, ПКМ - ссылка, а СКМ проверить страничку на которой находишься.
Отсутствует
Нужна кнопка по ЛКМ- запустить приложение, по ПКМ-закрыть приложение.
Пыжился сделать, но что-то не фурычит, процесс приложения по ПКМ завершает, а вот запустить по ЛКМ никак не хочет. Может кто глянет что не так.
this.onclick = function(event) { if(event.button == 0) { // Действие при клике ЛКМ startProcess("C:\\Program Files\\Internet Download Manager\\IDMan.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); } else custombuttons. alertBox ("Файл не найден", path); }; } else if(event.button == 2 && !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey) { // Действие при клике ПКМ без модификаторов var file = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); file.initWithPath("C:\\WINDOWS\\system32\\taskkill.exe"); var process = Components.classes["@mozilla.org/process/util;1"] .createInstance(Components.interfaces.nsIProcess); process.init(file); var args = ["/F", "/IM","IDMan.exe"]; process.run(false, args, args.length) } }; this.oncontextmenu = function(event) { if(event.button == 2 && !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey) { // Блокируем контекстное меню при клике ПКМ без модификаторов event.preventDefault(); event.stopPropagation(); } };
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
okkamas_knife
Поставил после первой закрывающей скобки, кнопка стала не активной, может не туда вставляю.
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); } startProcess("C:\\Program Files\\Internet Download Manager\\IDMan.exe",[""]); else custombuttons. alertBox ("Файл не найден", path); }; }
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
А для Visrus Total кнопочки нет? Стоит расширение Virus Total Scan Url, но маленько не тот функционал что хочется. А хочется два окошка для ссылки и для файла. А если мечтать по полной, ЛКМ - файлы, ПКМ - ссылка, а СКМ проверить страничку на которой находишься.
Mishania попробуйте этот код в инициализацию
this.onmouseup (e) { //===================== ЛКМ - форма для загрузки файлов if (e.button == 0) { gBrowser.selectedTab = gBrowser.addTab("https://www.virustotal.com/ru"); } //===================== ПКМ - вставка ссылки из буфера else if (e.button == 2 && !e.ctrlKey) { this.oncontextmenu = function () { return false }; var clip = readFromClipboard(); var tab = gBrowser.loadOneTab("https://www.virustotal.com/ru/#url", null, null, null, false); tab.addEventListener("load", function () { content.document.forms[1].elements[0].value = clip; content.document.querySelector('#btn-scan-url').click(); tab.removeEventListener("load", arguments.callee, false); }, false) } //===================== ПКМ + Ctrl - контекстное меню кнопки else if (e.button == 2 && e.ctrlKey) { gShowPopup(this) } //===================== СКМ - отправка текущей страницы на проверку else { var url = content.document.location.href; var tab = gBrowser.loadOneTab("https://www.virustotal.com/ru/#url", null, null, null, false); tab.addEventListener("load", function () { content.document.forms[1].elements[0].value = url; content.document.querySelector('#btn-scan-url').click(); tab.removeEventListener("load", arguments.callee, false); }, false) } }
Отредактировано Чайник (28-11-2013 02:29:24)
Отсутствует
Mishania
Что-то при написании того поста не вставилось слово function. Не знаю почему.
Вот код который у меня работает
this.onmouseup = function(e){ //===================== ЛКМ - форма для загрузки файлов if(e.button==0) { gBrowser.selectedTab = gBrowser.addTab("https://www.virustotal.com/ru"); } //===================== ПКМ - вставка ссылки из буфера else if(e.button==2&&!e.ctrlKey) { this.oncontextmenu = function () { return false }; var clip = readFromClipboard(); var tab = gBrowser.loadOneTab("https://www.virustotal.com/ru/#url", null, null, null, false); tab.addEventListener("load", function(){ content.document.forms[1].elements[0].value=clip; content.document.querySelector('#btn-scan-url').click(); tab.removeEventListener("load", arguments.callee, false); }, false) } //===================== ПКМ + Ctrl - контекстное меню кнопки else if(e.button==2&&e.ctrlKey) { gShowPopup(this) } //===================== СКМ - отправка текущей страницы на проверку else { var url = content.document.location.href; var tab = gBrowser.loadOneTab("https://www.virustotal.com/ru/#url", null, null, null, false); tab.addEventListener("load", function(){ content.document.forms[1].elements[0].value=url; content.document.querySelector('#btn-scan-url').click(); tab.removeEventListener("load", arguments.callee, false); }, false) } }
Отсутствует
bunda1
Можешь middleMousePaste для подправить? А то она перестала замещать выделенный текст, плюс к этому мешает открыть с первого раза вкладку Настройка Nightly, это по ПКМ - Настроить, или по-другому в новой кнопке PanelUI-menu-button нажать +Настроить, приходится эту самую +Настроить два раза клацать.
Отсутствует
Подскажите, как в Custom Buttons выполнять команды зашитые в контекстное меню?
Скажем gContextMenu.viewImageInfo();
Я пробую в Scratchpad'e но получается ошибка "gContextMenu is null"
И ещё вопрос - как с помощью js вызвать контекстное меню элемента страницы?
Отредактировано toxa (02-12-2013 19:54:21)
Отсутствует
Скажем gContextMenu.viewImageInfo();
Можно вот так: https://forum.mozilla-russia.org/viewto … 00#p383600
Или вот так: https://forum.mozilla-russia.org/viewto … 39#p599539
И ещё вопрос - как с помощью js вызвать контекстное меню элемента страницы?
Примерно так:
var targetNode = content.document.documentElement; var doc = targetNode.ownerDocument; var win = doc.defaultView; targetNode.dispatchEvent(new MouseEvent("contextmenu", { bubbles: true, cancelable: true, view: win/*, detail: 1, screenX: 0, screenY: 0, clientX: 0, clientY: 0, ctrlKey: false, altKey: false, shiftKey: false, metaKey: false, button: 0, relatedTarget: null*/ }));
Отредактировано Infocatcher (02-12-2013 21:14:54)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
bunda1
Можешь middleMousePaste для подправить? А то она перестала замещать выделенный текст, плюс к этому мешает открыть с первого раза вкладку Настройка Nightly, это по ПКМ - Настроить, или по-другому в новой кнопке PanelUI-menu-button нажать +Настроить, приходится эту самую +Настроить два раза клацать.
Завтра.
Отредактировано bunda1 (02-12-2013 22:37:40)
Отсутствует
toxa пишетСкажем gContextMenu.viewImageInfo();
Можно вот так: https://forum.mozilla-russia.org/viewto … 00#p383600
Или вот так: https://forum.mozilla-russia.org/viewto … 39#p599539
Infocatcher, я взял за основу этот код
document.popupNode = content.document.documentElement; var cm = document.getElementById("contentAreaContextMenu"); cm.collapsed = true; cm.openPopup(); document.getElementById("id пункта меню").click(); cm.hidePopup(); cm.collapsed = false;
Как-то он странно себя ведёт. Вроде сработал, но стоит обновить страницу и уже не работает, в консоли ошибка TypeError: gContextMenu is null .
Но если я вызову правым кликом контекстное меню у любого элемента, даже и на другой вкладке - код опять работает.
Отсутствует
Как узнать координаты изображения на странице из контекстного меню изображения.
Я тут нашёл код но не работает в фреймах:
function getAbsolutePosition(el) { var r = { x: el.offsetLeft, y: el.offsetTop }; if ( el.offsetParent ) { var tmp = getAbsolutePosition(el.offsetParent); r.x += tmp.x; r.y += tmp.y; } return r; } var position = getAbsolutePosition(img);
Отредактировано bunda1 (03-12-2013 03:59:30)
Отсутствует
Использую такой код для открытия журнала во вкладке:
this.onclick = function(event) { if(event.button == 1) { if(getBrowser().currentURI.spec == "about:blank") loadURI ("chrome://browser/content/history/history-panel.xul"); else { getBrowser (). selectedTab = getBrowser (). addTab ("chrome://browser/content/history/history-panel.xul"); } } };
Вид отображения в нем настроен "По дате последнего посещения". Но по каким-то причинам, время от времени вид сбрасывается на "По дате". Такое поведение начинает раздражать.
Помогите дописать код так, чтобы при открытии вкладки журнала вид сразу фиксировался на нужном мне - "По дате последнего посещения". Нужный параметр в about:config я не нашел.
И еще хотелось бы добавить такую плюшку: при нажатии СКМ по кнопке "Вид" произвести очистку журнала.
Отсутствует
Inko7
Попробуй добавить в кнопку
addEventListener("load", function(e) { if (e.target.location != "chrome://browser/content/history/history-panel.xul") return; const doc = e.target, btn = doc.getElementById("viewButton"), itm = doc.getElementById("bylastvisited"); setTimeout(function() itm.doCommand(), 100); btn.onclick = function(e) { if (e.button != 1) return; const sjs = {}; Services.scriptloader.loadSubScript("chrome://browser/content/sanitize.js", sjs); sjs.Sanitizer.prototype.items.history.clear(); }; doc.defaultView.BookmarksEventHandler = BookmarksEventHandler; }, true, gBrowser);
Отсутствует
Как-то он странно себя ведёт. Вроде сработал, но стоит обновить страницу и уже не работает, в консоли ошибка TypeError: gContextMenu is null .
Но если я вызову правым кликом контекстное меню у любого элемента, даже и на другой вкладке - код опять работает.
Странно, у меня на этой странице работает вот такое (из Scratchpad'а):
document.popupNode = content.document.links[0]; var cm = document.getElementById("contentAreaContextMenu"); cm.collapsed = true; cm.openPopup(); document.getElementById("context-openlinkintab").click(); cm.hidePopup(); cm.collapsed = false;
Как/откуда запускается код?
И можно попробовать добавить вот так:
Добавлено 03-12-2013 18:15:56
Как узнать координаты изображения на странице из контекстного меню изображения.
Отредактировано Infocatcher (03-12-2013 18:15:56)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Странно, у меня на этой странице работает вот такое (из Scratchpad'а):
Выделить кодКод:
document.popupNode = content.document.links[0]; var cm = document.getElementById("contentAreaContextMenu"); cm.collapsed = true; cm.openPopup(); document.getElementById("context-openlinkintab").click(); cm.hidePopup(); cm.collapsed = false;Как/откуда запускается ?
Из Scratchpad'а же.
Вот что получается когда Scratchpad в контексте "Браузер"
И вот что в контексте "Содержимое"
А после правого клика в любом месте страницы - лишь бы появилось какое-то контекстное меню - код начинает работать. До обновления страницы.
И можно попробовать добавить вот так:
Это я не понял в какое место кода добавлять.
Отсутствует
И вот что в контексте "Содержимое"
Это да, там и не должно работать.
Это я не понял в какое место кода добавлять.
Надо добавить
после
И еще вот так можно попробовать:
document.popupNode = content.document.links[0]; var cm = document.getElementById("contentAreaContextMenu"); //cm.hidePopup(); cm.collapsed = true; cm.openPopup(); setTimeout(function() { document.getElementById("context-openlinkintab").click(); cm.hidePopup(); cm.collapsed = false; }, 0);
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует