Полезная информация

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.

№2628-07-2015 22:52:51

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 42.0

Re: помогите создать кнопку

upd: чуть поправил.

Отсутствует

 

№2729-07-2015 00:03:06

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2254
UA: Firefox 31.0

Re: помогите создать кнопку

turbot пишет

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});
}

Отсутствует

 

№2829-07-2015 00:11:08

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 42.0

Re: помогите создать кнопку

Dumby пишет

В общем, как тебе такой вариант ?

Эээ, ну как мне с вами спорить, если я с трудом понимаю, что сам делаю?.. :D Идеально, спасибо. :)

Отсутствует

 

№2929-07-2015 05:00:34

jars
Забанен
 
Группа: Members
Зарегистрирован: 28-07-2015
Сообщений: 235
UA: Palemoon 25.0

Re: помогите создать кнопку

turbot
Dumby
Красавцы! Действительно идеально.

Отсутствует

 

№3031-07-2015 16:41:27

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 268
UA: Firefox 39.0

Re: помогите создать кнопку

Dumby пишет

В общем, как тебе такой вариант ?

Выделить код

Код:

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});
}

Здравствуйте, а как тут кнопки левую и правую поменять местами, левая кнопка на мышке глючит - переназначил в виндовс, вот теперь код при нажатии на левую клавишу - закрывает вкладки справа от активной.

Отсутствует

 

№3131-07-2015 18:16:09

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 42.0

Re: помогите создать кнопку

fokanik пишет

кнопки левую и правую поменять местами

Выделить код

Код:

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;
        }

Отсутствует

 

№3231-07-2015 18:47:19

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 268
UA: Firefox 39.0

Re: помогите создать кнопку

turbot пишет
Выделить код

Код:

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)

Отсутствует

 

№3331-07-2015 18:56:02

jars
Забанен
 
Группа: Members
Зарегистрирован: 28-07-2015
Сообщений: 235
UA: Palemoon 25.0

Re: помогите создать кнопку

fokanik
Щас проверил у себя, работает как надо, кнопки меняются без перезапуска бравзера. Смотри внимательно что да как делал.
зы. мыша подпаяй :D

Отсутствует

 

№3431-07-2015 19:17:39

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 39.0

Re: помогите создать кнопку

turbot пишет
Выделить код

Код:

case 0: tabs = tabs.slice(index + 1);
            case 1: tabs.splice(index, 1); break;

Там «break;» убежал, после последнего case он не нужен, а вот в начале или в середине – очень даже.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№3531-07-2015 19:41:59

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 268
UA: Firefox 39.0

Re: помогите создать кнопку

Что-то у меня вообще все заглючило, жму на кноку - нет реакции, только менюшка - редактировать открывается, ща старую проверю кнопку. А может ей net.framevork надо какой-нить? :sick:

Добавлено 31-07-2015 19:50:13

fokanik пишет

Там «break;» убежал, после последнего case он не нужен, а вот в начале или в середине – очень даже.

Я break туда сразу впихнул, только вот как - с ошибками:

Выделить код

Код:

case 0: tabs = tabs.slice(index + 1)break;
jars пишет

Щас проверил у себя, работает как надо, кнопки меняются без перезапуска бравзера. Смотри внимательно что да как делал.
зы. мыша подпаяй :D

Ура, получилось :cool:

Всем спасибо!

Отредактировано fokanik (31-07-2015 19:54:31)

Отсутствует

 

№3603-08-2015 09:50:44

dorosholeg
Участник
 
Группа: Members
Зарегистрирован: 12-09-2013
Сообщений: 14
UA: Firefox 39.0

Re: помогите создать кнопку

Можно ли создать такую кнопку при нажатии на которую отображаются свойства закладки открытой в данный момент?

Отредактировано dorosholeg (03-08-2015 09:51:56)

Отсутствует

 

№3703-08-2015 11:39:34

Ultima2m
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 28-11-2013
Сообщений: 608
UA: Firefox 39.0

Re: помогите создать кнопку

dorosholeg пишет

Можно ли создать такую кнопку при нажатии на которую отображаются свойства закладки открытой в данный момент?
                    Отредактировано dorosholeg (Сегодня 11:51:56)

Клик по фавиконке сайта открывает свойства страницы.

Отсутствует

 

№3803-08-2015 16:02:03

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 42.0

Re: помогите создать кнопку

Ultima2m пишет

Клик по фавиконке сайта открывает свойства страницы.

По-дефолту фавиконок в адресной строке вообще нет. И давно. Это у вас CTR, либо кнопки [CB]Вернуть иконки сайтов в адресной строке + Autocopy+3.

dorosholeg

скрытый текст
Если указанные выше варианты не подходят, то во вкладку "код":

Выделить код

Код:

gIdentityHandler.handleMoreInfoClick(event);

либо в инициализацию любой кнопки:

Выделить код

Код:

document.getElementById("page-proxy-favicon").setAttribute('oncontextmenu', 'if (event.target == this && !event.ctrlKey && !event.shiftKey) {event.preventDefault(); event.stopPropagation(); gIdentityHandler.handleMoreInfoClick(event);}');

- "информация о странице" будет открываться правым кликом по значку идентификации сайта (замочек/глобус).

Отсутствует

 

№3914-10-2015 12:44:55

KOMMEHTATOP
Участник
 
Группа: Members
Зарегистрирован: 13-10-2015
Сообщений: 53
UA: Firefox 41.0

Re: помогите создать кнопку

Доброго времени.Может не по теме -извините.
Есть такая кнопка или можно создать?(не нашел на форуме)
Типа:
Scroll To Top или Кнопка "Вверх"


Distance Subordinatio!

Отсутствует

 

№4014-10-2015 14:46:16

jars
Забанен
 
Группа: Members
Зарегистрирован: 28-07-2015
Сообщений: 235
UA: Palemoon 25.0

Re: помогите создать кнопку

KOMMEHTATOP
№86
или отдельно кнопка Scroll2Top с кодом
Код

Выделить код

Код:

content.scrollTo(0, 0);

Отсутствует

 

№4115-10-2015 08:16:57

Ultima2m
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 28-11-2013
Сообщений: 608
UA: Firefox 41.0

Re: помогите создать кнопку

KOMMEHTATOP пишет

Есть такая кнопка или можно создать?(не нашел на форуме)
Типа:
Scroll To Top или Кнопка "Вверх"

Настрой жесты. Гораздо удобнее.

Отсутствует

 

№4215-10-2015 08:25:50

KOMMEHTATOP
Участник
 
Группа: Members
Зарегистрирован: 13-10-2015
Сообщений: 53
UA: Firefox 41.0

Re: помогите создать кнопку

Доброго времени.
Очень не хватает кнопки  радио
1.Чтоб можно было редактировать радиостанции.
2.И если возможно регулировка громкости.
Вот похожее расширение для Opera - Хрома-Mozilla Firefox.
Snimok2.1445586066.jpg или Bezymyannyj-1.1445586699.jpg

Отредактировано KOMMEHTATOP (26-10-2015 21:30:43)


Distance Subordinatio!

Отсутствует

 

№4326-10-2015 16:46:56

dorosholeg
Участник
 
Группа: Members
Зарегистрирован: 12-09-2013
Сообщений: 14
UA: Firefox 41.0

Re: помогите создать кнопку

Добрый день. У меня несколько профилей мозилы, как мне их пронумеровать чтобы различать. Нужна такая кнопка чтобы я мог на ней написать цифры:1, 2, 3 и т.д., спасибо.

Отсутствует

 

№4426-10-2015 21:35:34

KOMMEHTATOP
Участник
 
Группа: Members
Зарегистрирован: 13-10-2015
Сообщений: 53
UA: Firefox 41.0

Re: помогите создать кнопку

dorosholeg
В расширении Speed Dial [FVD] можно использовать несколько профилей.
https://addons.mozilla.org/Ru/firefox/a … peed-dial/

Отредактировано KOMMEHTATOP (26-10-2015 21:35:59)


Distance Subordinatio!

Отсутствует

 

№4519-11-2015 13:59:29

ifln
Участник
 
Группа: Members
Зарегистрирован: 20-09-2013
Сообщений: 235
UA: Firefox 38.0

Re: помогите создать кнопку

Нужна кнопка, чтоб можно было таскать мышкой отдельно открытые большие (больше окна браузера) картинки. Желательно при этом скрывать скролбар.

Отредактировано ifln (19-11-2015 14:00:18)

Отсутствует

 

№4619-11-2015 16:09:05

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 28.0

Re: помогите создать кнопку

ifln пишет

Нужна кнопка, чтоб можно было таскать мышкой отдельно открытые большие (больше окна браузера) картинки. Желательно при этом скрывать скролбар.

Непонятно.

Отсутствует

 

№4719-11-2015 17:49:43

ifln
Участник
 
Группа: Members
Зарегистрирован: 20-09-2013
Сообщений: 235
UA: Firefox 38.0

Re: помогите создать кнопку

bunda1
Привет!
Если открыть большую картинку в отдельной вкладке, под курсором будет +
После нажатия +, чтобы сдвинуть ее вниз/вверх/вправо/влево надо пользоваться скролом. Я хочу тягать ее мышкой.
- (уменьшить) желателен, но не обязателен.
Можно так сделать?

Отредактировано ifln (19-11-2015 18:00:45)

Отсутствует

 

№4820-11-2015 12:28:20

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2254
UA: Firefox 38.0

Re: помогите создать кнопку

ifln пишет

Можно так сделать?

Попробовал. Если и у тебя сработает, то стоит отметить,
что в неэлектролизисных окнах код не дружит с панелями
типа девтулс, сайдбар, абп, но, надеюсь, тебя это не сильно огорчит.

скрытый текст

Выделить код

Код:

({
    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`);

Отсутствует

 

№4920-11-2015 13:13:33

ifln
Участник
 
Группа: Members
Зарегистрирован: 20-09-2013
Сообщений: 235
UA: Firefox 38.0

Re: помогите создать кнопку

Dumby
Шикарно. Большое спасибо!

Отсутствует

 

№5009-12-2016 15:18:25

KOMMEHTATOP
Участник
 
Группа: Members
Зарегистрирован: 13-10-2015
Сообщений: 53
UA: Firefox 42.0

Re: помогите создать кнопку

А есть в природе код кнопки этого расширеня TimerFox (таймер-напоминалку) или создать?


Distance Subordinatio!

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]