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

Юристы зарабатывают огромные деньги и славу, оперируя хорошим знанием законов. Правила форума — простой путь к успешному общению.

№2630-12-2005 14:30:51

e-travel
Участник
 
Группа: Extensions
Откуда: г.Киев
Зарегистрирован: 06-06-2005
Сообщений: 390
Веб-сайт

Re: Горячие клавиши

stEp
это предложение к писателям Wiki :) . Я написал ваше имя в цитате, что-бы сохранить ваше авторское право на ссылку :P


Fx 2.0.0.8

Отсутствует

 

№2730-12-2005 16:33:55

Bananas
Участник
 
Группа: Members
Откуда: Minsk, Belarus
Зарегистрирован: 12-03-2005
Сообщений: 1059
Веб-сайт

Re: Горячие клавиши

наверное последний вопрос)
можно ли реализовать таймер? я пробовал, но видно чего-то не понимаю.


Sometimes I give myself the creeps,
Sometimes my mind plays tricks on me...

Отсутствует

 

№2830-12-2005 17:34:11

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
Веб-сайт

Re: Горячие клавиши

Bananas пишет

...
можно ли реализовать таймер?...

Можно.

1.1. Запуск таймера:

Выделить код

Код:

if (!document. getElementById ("timer_label"))
{
    var x = document. createElement ("label");
    x. setAttribute ("id", "timer_label");
    var mt = document. getElementById ("toolbar-menubar");
    var ts = document. getElementById ("menubar-items"). nextSibling;
    mt. insertBefore (x, ts);
    window. timerVal = 0;
    window. timerFunc = function ()
    {
        var y = document. getElementById ("timer_label");
        y. setAttribute ("value", window. timerVal++);
    }
    window. timerID = window. setInterval (window. timerFunc, 1000);
}

1.2. Остановка:

Выделить код

Код:

var x = document. getElementById ("timer_label");
if (x)
{
    x. parentNode. removeChild (x);
    window. clearInterval (window. timerID);
}

2. Отложенное выполнение:

Выделить код

Код:

window. timeoutID = window. setTimeout (function () { alert ("delayed action"); }, 5000);

Шаблоны:
1. Таймеры
1.1. Запуск таймера:

Выделить код

Код:

var TimerID = "newTimerID"; // строка-идентификатор таймера, должна быть уникальной для каждого нового таймера
var TimerFN = "newTimerFN"; // строка-идентификатор функции таймера
var TimerVL = "newTimerVL"; // строка-идентификатор "связанного" с таймером значения, должна быть уникальной для каждого нового таймера
var interval = 1000; // значение задержки
if (!window [TimerID])
{
    window [TimerFN] = function ()
    {
        // действия по таймеру
        ...
    }
    // действия, единожды выполняемые при запуске таймера
    ...
    window [TimerVL] = 0;
    window [TimerID] = window. setInterval (window [TimerFN], interval);
}

1.2. Останов таймера:

Выделить код

Код:

var TimerID = "newTimerID";
var TimerFN = "newTimerFN";
var TimerVL = "newTimerVL";
if (window [TimerID])
{
    window. clearInterval (window [TimerID]);
    window [TimerID] = undefined;
    window [TimerFN] = undefined;
    window [TimerVL] = undefined;
    // действия, выполняемые при останове таймера
    ...
}

2. Таймауты
2.1. Инициализация

Выделить код

Код:

var TimeoutID = "newTimeoutID"; // строка-идентификатор таймаута, должна быть уникальной для каждого нового таймаута
var TimeoutFN = "newTimeoutFN"; // строка-идентификатор функции таймаута
var interval = 10000; // интервал задержки
if (!window [TimeoutID])
{
    window [TimeoutFN] = function ()
    {
        window [TimeoutID] = undefined;
        window [TimeoutFN] = undefined;
        // действия по таймауту
        ...
    }
    // действия, выполняемые перед инициализацией таймаута
    ...
    window [TimeoutID] = window. setTimeout (window [TimeoutFN], interval);
}

2.2. Отмена таймаута

Выделить код

Код:

var TimeoutID = "newTimeoutID";
var TimeoutFN = "newTimeoutFN";
if (window [TimeoutID])
{
    window. clearTimeout (window [TimeoutID]);
    window [TimeoutID] = undefined;
    window [TimeoutFN] = undefined;
    // действия, выполняемые при отмене таймаута
    ...
}

Отредактировано Anton (30-12-2005 19:10:44)


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№2931-12-2005 02:26:30

Bananas
Участник
 
Группа: Members
Откуда: Minsk, Belarus
Зарегистрирован: 12-03-2005
Сообщений: 1059
Веб-сайт

Re: Горячие клавиши

таймаут то что надо)

эксперимент показал что с помощью keyconfig можно очень многое. удалось повесить на горячую клавишу  запуск программы, код из external app buttons. и проверку орфографии вордом с помощью оперного spell.vbs.

Отредактировано Bananas (31-12-2005 03:59:55)


Sometimes I give myself the creeps,
Sometimes my mind plays tricks on me...

Отсутствует

 

№3031-12-2005 15:33:38

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
Веб-сайт

Re: Горячие клавиши

Dimanish пишет

Все, я вроде разобрался с установкой горячих клавиш в FF и TB.
Путь к успеху таков: смотря что настраиваем FF или TB, ставим расширения:
MenuManipulator для FF и/или MenuManipulator для TB.
Затем расширение keyconfig.
Установив расширения запускаем браузер/почтовик.
Заходим в Инструменты->Расширения->MenuManipulator.
В MenuManipulator напротив настраиваемой команды смотрим значение command или oncommand.
Копируем его (Edit->Ctrl-C).
Запускам keyconfig и создаем новое сочетание для нужной команды: Add a new key.
В поле Name пишем любое имя для будущей команды (например "Обновить все вкладки").
В поле /* CODE */ пишем значение того самого command или oncommand, которые мы смотрели при помощи  ->MenuManipulator (например "gBrowser.reloadAllTabs();")
Вот, собственно и все. Перезапускаем браузер/почтовик.

Если вышеуказанная методика не работает, можно попробовать следующую.
Шаблон:

Выделить код

Код:

var y = document. getElementsByAttribute ("label", "Расширения");
y.item(0).click();

В первой строке указывается название необходимого пункта меню. Во второй строке, возможно, придется "поиграться" с числами. Диапазон изменения чисел можно узнать, заменив вторую строку следующим кодом:

Выделить код

Код:

alert(y.length);

Если alert показывает, допустим, 2, то возможные значения будут 0, 1.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№3104-01-2006 13:50:17

Dimanish
Участник
 
Группа: Extensions
Зарегистрирован: 31-03-2005
Сообщений: 2371

Re: Горячие клавиши

Anton
Тебе как к гуру :) такой вопрос, можно ли при помощи keyconfig назначить горячую клавишу на открытие какой-либо страницы?

P.S. Конкретно, есть закладка Force Wrap, хотелось бы повесить на нее гор. клавишу.


Тут должна была быть подпись. А, да... Вот она и есть.

Отсутствует

 

№3208-01-2006 01:42:47

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
Веб-сайт

Re: Горячие клавиши

Dimanish пишет

...можно ли при помощи keyconfig назначить горячую клавишу на открытие какой-либо страницы?

P.S. Конкретно, есть закладка Force Wrap, хотелось бы повесить на нее гор. клавишу.

Извиняюсь, сейчас только заметил. Можно. Вот так:

Выделить код

Код:

loadURI ("...", null, null);

Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№3308-01-2006 01:53:50

Dimanish
Участник
 
Группа: Extensions
Зарегистрирован: 31-03-2005
Сообщений: 2371

Re: Горячие клавиши

Anton
Спасибо, работает.


Тут должна была быть подпись. А, да... Вот она и есть.

Отсутствует

 

№3411-01-2006 05:49:29

STNG
Участник
 
Группа: Members
Зарегистрирован: 17-01-2005
Сообщений: 220

Re: Горячие клавиши

Как сделать переход по вкладкам (на левую и на правую) с помощью клавиш 1 и 2?


Ищу расширение EverythingLikeOpera для FireFox

Отсутствует

 

№3511-01-2006 11:34:52

stEp
Kiwi
 
Группа: Extensions
Откуда: Тьма-Таракань
Зарегистрирован: 20-12-2004
Сообщений: 906

Re: Горячие клавиши

STNG пишет

Как сделать переход по вкладкам (на левую и на правую) с помощью клавиш 1 и 2?

Next Tab

Выделить код

Код:

gBrowser.mTabContainer.advanceSelectedTab(1);

Previous Tab

Выделить код

Код:

gBrowser.mTabContainer.advanceSelectedTab(-1);

Homo sum: humāni nihil a me aliēnum puto

Отсутствует

 

№3611-01-2006 16:02:52

Dimanish
Участник
 
Группа: Extensions
Зарегистрирован: 31-03-2005
Сообщений: 2371

Re: Горячие клавиши

Выделить код

Код:

Вперед: BrowserForward();
Назад: BrowserBack();
К началу: BrowserHome();
Обновить из сети: BrowserReloadSkipCache()
Уменьшить размер шрифта: ZoomManager.prototype.getInstance().reduce();
Увеличить размер шрифта: ZoomManager.prototype.getInstance().enlarge();
Обычный размер шрифта: ZoomManager.prototype.getInstance().reset();
Полноэкранный режим: BrowserFullScreen();
Информация о странице: BrowserPageInfo();
Найти на этой странице: onFindCmd();	
Найти следующее: onFindAgainCmd();
Найти предыдущее: onFindPreviousCmd();
Добавить страницу в закладки: addBookmarkAs(document.getElementById('content'), false);
Добавить вкладки в закладки: addBookmarkAs(document.getElementById('content'), true);
Свойства закладки: goDoCommand('cmd_bm_properties');

P.S. Помните, что на одно и тоже действие можно назначать более одной комбинации клавиш.
Сочетания клавиш вида: Ctrl+... , Ctr+Alt+... , Ctrl+Shift+... , Ctrl+Alt+Shift+... работаю как для русской, так и для английской раскладки.
Если хотите использовать сочетания: отдельная буква [к примеру G: /* CODE */ ILO.indicatorClick();] , а также Alt+... , Alt+Shift+... , Shift+... как для русской, так и для английской раскладки придется продублировать соответствующее сочетание для русской раскладки [к примеру П: /* CODE */ ILO.indicatorClick();]
P.S.S. Кто у нас шибко грамотный, оформите, пожалуйста, статью http://forum.mozilla.ru/doku.php?id=general:tips:hotkeys по-человечески.


Тут должна была быть подпись. А, да... Вот она и есть.

Отсутствует

 

№3713-01-2006 15:35:34

Dimanish
Участник
 
Группа: Extensions
Зарегистрирован: 31-03-2005
Сообщений: 2371

Re: Горячие клавиши

Выделить код

Код:

1. Следующая вкладка: gBrowser.mTabContainer.advanceSelectedTab(1); 
2. Предыдущая вкладка: gBrowser.mTabContainer.advanceSelectedTab(-1);
Выделить код

Код:

gBrowser.mTabContainer.advanceSelectedTab(1,true);
gBrowser.mTabContainer.advanceSelectedTab(-1,true);

Так будет более правильно.


Тут должна была быть подпись. А, да... Вот она и есть.

Отсутствует

 

№3813-01-2006 19:53:36

Bananas
Участник
 
Группа: Members
Откуда: Minsk, Belarus
Зарегистрирован: 12-03-2005
Сообщений: 1059
Веб-сайт

Re: Горячие клавиши

хм.. а можно повесить вызов меню на клавишу?


Sometimes I give myself the creeps,
Sometimes my mind plays tricks on me...

Отсутствует

 

№3914-01-2006 00:15:15

Al_H
Away
 
Группа: Members
Откуда: SPb
Зарегистрирован: 10-06-2005
Сообщений: 5508

Re: Горячие клавиши

Alt

Отсутствует

 

№4014-01-2006 02:26:20

Bananas
Участник
 
Группа: Members
Откуда: Minsk, Belarus
Зарегистрирован: 12-03-2005
Сообщений: 1059
Веб-сайт

Re: Горячие клавиши

если панель меню скрыть?


Sometimes I give myself the creeps,
Sometimes my mind plays tricks on me...

Отсутствует

 

№4114-01-2006 13:10:20

Dimanish
Участник
 
Группа: Extensions
Зарегистрирован: 31-03-2005
Сообщений: 2371

Re: Горячие клавиши

Можешь поставить расширение Autohide - в полноэкранном режиме скрывает/показывает любые панели.
Еще расширения из этой же серии: autoHideStatusbar и hidetabbar


Тут должна была быть подпись. А, да... Вот она и есть.

Отсутствует

 

№4214-01-2006 16:06:29

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
Веб-сайт

Re: Горячие клавиши

Bananas пишет

хм.. а можно повесить вызов меню на клавишу?

Можно.
Для контекстного меню просто (слишком просто ;))

Выделить код

Код:

var cm = document. getElementById ("contentAreaContextMenu");
cm. showPopup (window. getBrowser (), 0, 0, "context");

Для главного меню посложней:

Выделить код

Код:

var reqMenu = "view-menu";
var x = 0;
var y = 0;
var fm = document. getElementById (reqMenu);
var fmp = fm. getElementsByTagName ("menupopup")[0];
var ps = document. getElementById ("keyconfigPopups");
if (!ps)
{
    ps=document. createElement("popupset");
    ps. setAttribute ("id", "keyconfigPopups");
    window. getBrowser (). appendChild (ps);
}
var nfmp = fmp. cloneNode (true);
if (!ps. getElementsByAttribute ("id", reqMenu) [0])
    ps. appendChild (nfmp);
else
    nfmp = ps. getElementsByAttribute ("id", reqMenu) [0];
nfmp. showPopup (window. getBrowser (), x, y, "context");

Пункты главного меню
Значения переменной reqMenu
Файлfile-menu
Правкаedit-menu
Видview-menu
Переходgo-menu
Закладкиbookmarks-menu
Инструментыtools-menu
СправкаhelpMenu


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№4314-01-2006 16:07:49

Dimanish
Участник
 
Группа: Extensions
Зарегистрирован: 31-03-2005
Сообщений: 2371

Re: Горячие клавиши

если панель меню скрыть?

Выделить код

Код:

var mb = document.getElementById("toolbar-menubar"); mb.collapsed = !mb.collapsed;

Отредактировано Dimanish (14-01-2006 16:08:15)


Тут должна была быть подпись. А, да... Вот она и есть.

Отсутствует

 

№4414-01-2006 19:44:45

Bananas
Участник
 
Группа: Members
Откуда: Minsk, Belarus
Зарегистрирован: 12-03-2005
Сообщений: 1059
Веб-сайт

Re: Горячие клавиши

спасибо, работает, можно избавиться от панели меню)
правда если открыто два окна получается, что x, y координаты относительно первого окна, т.е. когда я пытаюсь указать для х половину ширины окна (focusedWindow) меню появляется не там где ожидается...
и еще не совсем понятно как добраться до координат курсора..

---
исправилось добавлением соотв. screenX screenY

Отредактировано Bananas (14-01-2006 20:06:39)


Sometimes I give myself the creeps,
Sometimes my mind plays tricks on me...

Отсутствует

 

№4515-01-2006 17:44:05

Bananas
Участник
 
Группа: Members
Откуда: Minsk, Belarus
Зарегистрирован: 12-03-2005
Сообщений: 1059
Веб-сайт

Re: Горячие клавиши

меню bookmarks вызванное таким образом не содержит закладок((


Sometimes I give myself the creeps,
Sometimes my mind plays tricks on me...

Отсутствует

 

№4616-01-2006 05:40:34

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
Веб-сайт

Re: Горячие клавиши

1.

Bananas пишет

меню bookmarks вызванное таким образом не содержит закладок((

У меня всё в порядке - закладки в меню отображаются.

2.
Немного изменил код для учёта состояния "галочек" в меню:

Выделить код

Код:

var reqMenu = "bookmarks-menu";
var fm = document. getElementById (reqMenu);
var fmp = fm. getElementsByTagName ("menupopup")[0];
var ps = document. getElementById ("keyconfigPopups");
if (!ps)
{
    ps=document. createElement("popupset");
    ps. setAttribute ("id", "keyconfigPopups");
    window. getBrowser (). appendChild (ps);
}
var nfmp = fmp. cloneNode (true);
if (ps. getElementsByTagName ("menupopup"). length > 0)
{
    var op = ps. getElementsByTagName ("menupopup") [0];
    ps. removeChild (op);
}
ps. appendChild (nfmp);
nfmp. showPopup (window. getBrowser (), 20, 20, "context");

Отредактировано Anton (04-02-2006 13:10:44)


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№4719-01-2006 01:54:42

djet
Участник
 
Группа: Extensions
Откуда: 404 Not Found
Зарегистрирован: 20-11-2004
Сообщений: 2611

Re: Горячие клавиши

Можно ли сделать возврат к последнему N выбранному табу в обе стороны, как в TBE:Focus Previously Selected Tab Module?


Без бага и ошибки я софт Mozilla не люблю!
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Microsoft® Office Outlook® 2007 (12.0.4518.1014) MSO (12.0.4518.1014)

Отсутствует

 

№4819-01-2006 02:39:51

Dimanish
Участник
 
Группа: Extensions
Зарегистрирован: 31-03-2005
Сообщений: 2371

Re: Горячие клавиши

Не понял о чем речь


Тут должна была быть подпись. А, да... Вот она и есть.

Отсутствует

 

№4919-01-2006 02:50:41

djet
Участник
 
Группа: Extensions
Откуда: 404 Not Found
Зарегистрирован: 20-11-2004
Сообщений: 2611

Re: Горячие клавиши

Есть табы 1, 2, 3, 4, 5, 6, 7. Они были просмотрены в порядке 5→4→2→3. С помощью TBE:FPST можно перемещаться по истории просмотра табов, т.е. по нажатию одной клавиши это будет история назад (3→2→4→5), другой — историю вперёд (если текущая вкладка по переходу назад — 2, то доступно перемещение вперёд: 4→2→3). Т.е. это расширенный вариант функции TabFlip, активизирующую последний выбранный таб.


Без бага и ошибки я софт Mozilla не люблю!
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Microsoft® Office Outlook® 2007 (12.0.4518.1014) MSO (12.0.4518.1014)

Отсутствует

 

№5019-01-2006 14:36:10

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
Веб-сайт

Re: Горячие клавиши

djet пишет

Можно ли сделать возврат к последнему N выбранному табу в обе стороны, как в TBE:Focus Previously Selected Tab Module?

Можно. Правда, средствами одного keyconfig это будет сложно. Поэтому приведу решение для keyconfig+TBE (с включенным tabflip).

Вперёд по истории просмотра:

Выделить код

Код:

var cont = document. getElementById ("content");
cont. advanceSelectedTabByLastFocusedTime (1);

Назад по истории просмотра:

Выделить код

Код:

var cont = document. getElementById ("content");
cont. advanceSelectedTabByLastFocusedTime (-1);

Не проверял, но, возможно 1/-1 можно заменить на n/-n.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

Board footer

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