upd: чуть поправил.
Разреши поделиться наблюдениями
// СКМ - закрыть все вкладки, кроме активной и закрепленных
Если активная вкладка pinned,
то никакая вкладка закрыта не будет.
// ПКМ - закрыть вкладки справа от активной, кроме закрепленных ...
Если активная вкладка pinned,
то будут закрыты все вкладки справа, включая те вкладки, которые pinned.
... /показать меню кнопки с зажатой клавишей-модификатором
if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) {
e.preventDefault();
e.stopPropagation();
У jars в коде есть блок «// Hide context menu in Linux:».
Я изловчился проверить на Ubuntu 15.04.
И действительно, — там «e.preventDefault();» не помогает.
То есть: CB контекстное меню всё равно появляется.
В общем, как тебе такой вариант ?
this.setAttribute("context", ""); this.onclick = e => { var tab = gBrowser.selectedTab, pinned = tab.pinned; if (pinned && !e.button) return; if (e.button == 2 && (e.ctrlKey || e.shiftKey)) { gShowPopup(this); return; } var tabs = gBrowser.visibleTabs.filter(tab => !tab.pinned); if (!pinned) { var index = tabs.indexOf(tab); switch(e.button) { case 0: tabs = tabs.slice(0, index); break; case 1: tabs.splice(index, 1); break; case 2: tabs = tabs.slice(index + 1); } } for(var tab of tabs) gBrowser.removeTab(tab, {animate: false, byMouse: false}); }
Отсутствует
В общем, как тебе такой вариант ?
Выделить кодКод:
this.setAttribute("context", ""); this.onclick = e => { var tab = gBrowser.selectedTab, pinned = tab.pinned; if (pinned && !e.button) return; if (e.button == 2 && (e.ctrlKey || e.shiftKey)) { gShowPopup(this); return; } var tabs = gBrowser.visibleTabs.filter(tab => !tab.pinned); if (!pinned) { var index = tabs.indexOf(tab); switch(e.button) { case 0: tabs = tabs.slice(0, index); break; case 1: tabs.splice(index, 1); break; case 2: tabs = tabs.slice(index + 1); } } for(var tab of tabs) gBrowser.removeTab(tab, {animate: false, byMouse: false}); }
Здравствуйте, а как тут кнопки левую и правую поменять местами, левая кнопка на мышке глючит - переназначил в виндовс, вот теперь код при нажатии на левую клавишу - закрывает вкладки справа от активной.
Отсутствует
кнопки левую и правую поменять местами
switch(e.button) { case 0: tabs = tabs.slice(index + 1); case 1: tabs.splice(index, 1); break; case 2: tabs = tabs.slice(0, index); break; }
Отсутствует
Выделить кодКод:
switch(e.button){ case 0: tabs = tabs.slice(index + 1); case 1: tabs.splice(index, 1); break; case 2: tabs = tabs.slice(0, index); break; }
Не, все без изменений осталось - левая кнопка закрывает правые вкладки. Браузер перезапускал, может с системой чего?
Отредактировано fokanik (31-07-2015 18:50:05)
Отсутствует
Там «break;» убежал, после последнего case он не нужен, а вот в начале или в середине – очень даже.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Что-то у меня вообще все заглючило, жму на кноку - нет реакции, только менюшка - редактировать открывается, ща старую проверю кнопку. А может ей net.framevork надо какой-нить?
Добавлено 31-07-2015 19:50:13
Там «break;» убежал, после последнего case он не нужен, а вот в начале или в середине – очень даже.
Я break туда сразу впихнул, только вот как - с ошибками:
Щас проверил у себя, работает как надо, кнопки меняются без перезапуска бравзера. Смотри внимательно что да как делал.
зы. мыша подпаяй
Ура, получилось
Всем спасибо!
Отредактировано fokanik (31-07-2015 19:54:31)
Отсутствует
Можно ли создать такую кнопку при нажатии на которую отображаются свойства закладки открытой в данный момент?
Отредактировано dorosholeg (03-08-2015 09:51:56)
Отсутствует
Можно ли создать такую кнопку при нажатии на которую отображаются свойства закладки открытой в данный момент?
Отредактировано dorosholeg (Сегодня 11:51:56)
Клик по фавиконке сайта открывает свойства страницы.
Отсутствует
Клик по фавиконке сайта открывает свойства страницы.
По-дефолту фавиконок в адресной строке вообще нет. И давно. Это у вас CTR, либо кнопки [CB]Вернуть иконки сайтов в адресной строке + Autocopy+3.
dorosholeg
либо в инициализацию любой кнопки:
document.getElementById("page-proxy-favicon").setAttribute('oncontextmenu', 'if (event.target == this && !event.ctrlKey && !event.shiftKey) {event.preventDefault(); event.stopPropagation(); gIdentityHandler.handleMoreInfoClick(event);}');
- "информация о странице" будет открываться правым кликом по значку идентификации сайта (замочек/глобус).
Отсутствует
Доброго времени.Может не по теме -извините.
Есть такая кнопка или можно создать?(не нашел на форуме)
Типа:
Scroll To Top или Кнопка "Вверх"
Distance Subordinatio!
Отсутствует
Доброго времени.
Очень не хватает кнопки радио
1.Чтоб можно было редактировать радиостанции.
2.И если возможно регулировка громкости.
Вот похожее расширение для Opera - Хрома-Mozilla Firefox.
или
Отредактировано KOMMEHTATOP (26-10-2015 21:30:43)
Distance Subordinatio!
Отсутствует
Добрый день. У меня несколько профилей мозилы, как мне их пронумеровать чтобы различать. Нужна такая кнопка чтобы я мог на ней написать цифры:1, 2, 3 и т.д., спасибо.
Отсутствует
dorosholeg
В расширении Speed Dial [FVD] можно использовать несколько профилей.
https://addons.mozilla.org/Ru/firefox/a … peed-dial/
Отредактировано KOMMEHTATOP (26-10-2015 21:35:59)
Distance Subordinatio!
Отсутствует
Нужна кнопка, чтоб можно было таскать мышкой отдельно открытые большие (больше окна браузера) картинки. Желательно при этом скрывать скролбар.
Отредактировано ifln (19-11-2015 14:00:18)
Отсутствует
Нужна кнопка, чтоб можно было таскать мышкой отдельно открытые большие (больше окна браузера) картинки. Желательно при этом скрывать скролбар.
Непонятно.
Отсутствует
bunda1
Привет!
Если открыть большую картинку в отдельной вкладке, под курсором будет +
После нажатия +, чтобы сдвинуть ее вниз/вверх/вправо/влево надо пользоваться скролом. Я хочу тягать ее мышкой.
- (уменьшить) желателен, но не обязателен.
Можно так сделать?
Отредактировано ifln (19-11-2015 18:00:45)
Отсутствует
Можно так сделать?
Попробовал. Если и у тебя сработает, то стоит отметить,
что в неэлектролизисных окнах код не дружит с панелями
типа девтулс, сайдбар, абп, но, надеюсь, тебя это не сильно огорчит.
({ init(destroyMessageName) { this.destroyMessageName = destroyMessageName; var code = this.frameScriptCode.replace(/%MSG%/g, destroyMessageName); this.frameScriptURL = "data:," + encodeURIComponent(code); messageManager.loadFrameScript(this.frameScriptURL, true); addDestructor(this.destroy, this); }, destroy() { messageManager.removeDelayedFrameScript(this.frameScriptURL); messageManager.broadcastAsyncMessage(this.destroyMessageName); }, frameScriptCode: ` ({ init() { addEventListener("dragstart", this, true); addMessageListener("%MSG%", this); }, receiveMessage() { removeEventListener("dragstart", this, true); removeMessageListener("%MSG%", this); }, handleEvent(e) { this[e.type](e); }, dragstart(e) { if ( e.target.ownerDocument.mozSyntheticDocument && e.target instanceof content.HTMLImageElement && (content.scrollMaxX || content.scrollMaxY) && !e.ctrlKey && !e.shiftKey && content.getSelection().isCollapsed ) { this.stopEvent(e); this.initScroll(e); } }, initScroll(e) { this.image = e.target; this.x = e.clientX; this.y = e.clientY; this.image.style.cursor = "grab"; setTimeout(img => img.style.cursor = "grabbing", 100, this.image); addEventListener("mousemove", this, true); addEventListener("mouseup", this, true); addEventListener("click", this, true); }, destroyScroll() { if (!Components.utils.isDeadWrapper(this.image)) this.image.style.cursor = ""; removeEventListener("mousemove", this, true); removeEventListener("mouseup", this, true); removeEventListener("click", this, true); }, mousemove(e) { var dx = this.x - e.clientX; this.x = e.clientX; var dy = this.y - e.clientY; this.y = e.clientY; content.scrollBy(dx, dy); }, mouseup(e) { this.stopEvent(e); if (e.target != this.image) this.destroyScroll(); }, click(e) { this.stopEvent(e); this.destroyScroll(); }, stopEvent(e) { e.preventDefault(); e.stopPropagation(); e.stopImmediatePropagation(); } }).init();` }).init(`CB${_id.slice(20)}:IflnScroll:Destroy`);
Отсутствует
А есть в природе код кнопки этого расширеня TimerFox (таймер-напоминалку) или создать?
Distance Subordinatio!
Отсутствует