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

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

№770109-05-2014 13:48:33

beggrr
Участник
 
Группа: Members
Зарегистрирован: 04-02-2014
Сообщений: 128
UA: Firefox 26.0

Re: Custom Buttons

Хочу создать кнопку которая будет выполнять действие сочетания клавиш ctrl+t

Подскажите пожалуйста какой код надо вписать

Выделить код

Код:

gBrowser.selectedTab = gBrowser.addTab()

Отсутствует

 

№770209-05-2014 17:35:43

sinteros
Участник
 
Группа: Members
Зарегистрирован: 18-07-2013
Сообщений: 11
UA: Firefox 30.0

Re: Custom Buttons

beggrr пишет

Хочу создать кнопку которая будет выполнять действие сочетания клавиш ctrl+t

Подскажите пожалуйста какой код надо вписать

Выделить код

Код:

gBrowser.selectedTab = gBrowser.addTab()

По идее говоря должна открываться новая вкладка со Speed Dial а в итоге открывается почему то пустая вкладка.
И плюс к этому после установки Custom Buttons добавился глюк. После нажатия сочетания клавиш ctrl+t теперь открывается пустая вкладка и вкладка со Speed Dial.

Не подскажете есть ли схожее с  Custom Buttons дополнение. А то глюки как то пугают.

Отсутствует

 

№770309-05-2014 18:32:27

beggrr
Участник
 
Группа: Members
Зарегистрирован: 04-02-2014
Сообщений: 128
UA: Firefox 26.0

Re: Custom Buttons

sinteros
У меня в настройках выставлено открывать новую вкладку пустой, я даже и забыл, что там должен быть Speed Dial.
Так будет открываться Speed Dial

Выделить код

Код:

gBrowser.selectedTab = gBrowser.addTab("about:newtab")

Отсутствует

 

№770409-05-2014 19:00:41

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

Re: Custom Buttons

beggrr пишет

Может, мы неправильно понимаем друг друга? Я имел в виду прокрутку не в основном окне [firefox] а в окне самого Скретчпэда.

Извини я подумал то речь о странице :/

Кстати, у меня в этом окне Firegestures не работает.
А у вас?

У меня тоже.

P.S. я так сразу и не знаю как передать команды Скретчпэд разве только открывать как вкладку chrome://browser/content/devtools/scratchpad.xul

Отсутствует

 

№770509-05-2014 19:06:26

sinteros
Участник
 
Группа: Members
Зарегистрирован: 18-07-2013
Сообщений: 11
UA: Firefox 30.0

Re: Custom Buttons

Добавлено 09-05-2014 19:34:06

beggrr пишет

sinteros
У меня в настройках выставлено открывать новую вкладку пустой, я даже и забыл, что там должен быть Speed Dial.
Так будет открываться Speed Dial

Выделить код

Код:

gBrowser.selectedTab = gBrowser.addTab("about:newtab")

Огромное спасибо! Все заработало.
Разобрался в возникновении глюка со второй открывающийся вкладкой при нажатии ctrl+t. Случайно добавил лишний элемент к кнопке в виде сочетании клавиш в меню "Настройка кнопок".
Но самое неприятное все же это жуткая задержка когда нажимаешь на кнопку и отсутствие задержки при нажатии  ctrl+t.

Отредактировано sinteros (09-05-2014 19:36:59)

Отсутствует

 

№770609-05-2014 20:15:57

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

Re: Custom Buttons

Pony_Smile_Pack пишет

Кто-то сможет починить кнопку [Двойным правым кликом добавлять закладку в папку закладок]?
Она перестала добавлять во вложенные в основную папки (т.е. на панели закладок папка, а в ней ещё - и вот в эту уже не добавляет)
она добавляет вниз папки (а была другая: она двойным левым добавляла -вверх)

Выделить код

Код:

// Двойным левым кликом на папке закладок добавлять закладку в папку закладок, от 09.05.2014. ................................
addEventListener("dblclick", function(e) {      
   var target = e.originalTarget;
              
   if ( e.button !== 0 || !target._placesNode || !PlacesUtils.nodeIsFolder( target._placesNode ) ) return;          
        var docTitle = ( content.document.title || gBrowser.mCurrentTab.label).substr(0, 50);
        var folderId = PlacesUtils.getConcreteItemId( target._placesNode );
        var folderTitle = PlacesUtils.bookmarks.getItemTitle( folderId );
        var currentURI = Services.io.newURI( content.location, null, null );
        PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, docTitle );  

        // всплывающая подсказка ....
        var favicon = ( !!gBrowser.mCurrentTab.image ) ? gBrowser.mCurrentTab.image : "chrome://global/skin/icons/Portrait.png";
        Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService)
        .showAlertNotification( favicon, "Добавил в папку " + folderTitle + ":", docTitle, false, "", null, ""); 
});

Отредактировано bunda1 (09-05-2014 20:23:18)

Отсутствует

 

№770709-05-2014 20:57:04

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

Re: Custom Buttons

bunda1 пишет

но почему так не работает:

Выделить код

Код:

const lighted = finder[version ? "_highlight" : "_highlightDoc"];
lighted(false);
lighted(true, value );

и показывает ошибку this._getWindow is not a function для аргумента функции:

Выделить код

Код:

_highlight: function (aHighlight, aWord, aWindow) {
    let win = aWindow || this._getWindow();

При таком вызове this внутри функции будет ссылаться на глобальный объект (то есть на window).

Выделить код

Код:

var o = {
    m: function() {
        alert([this == o, this == window])
    }
};
o.m();
var m = o.m;
m();
m.call(o);

Кстати, вот так будет чуть-чуть быстрее:

Выделить код

Код:

const lighted = version ? finder._highlight : finder._highlightDoc;

(но в данном случае это не особо важно)

http://javascript.ru/tutorial/object/thiskeyword


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

Отсутствует

 

№770809-05-2014 21:26:34

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

Re: Custom Buttons

Infocatcher
Спасибо :)

Кстати, вот так будет чуть-чуть быстрее:

Выделить код

Код:

const lighted = version ? finder._highlight : finder._highlightDoc;

Мда, а я сам не сообразил.

Отсутствует

 

№770909-05-2014 21:27:52

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

Re: Custom Buttons

(отсюда)

beggrr пишет

Как сделать, чтобы расширение (джетпак) при запуске браузера было отключено и включалось через N секунд после запуска?

https://github.com/Infocatcher/Delayed_Startup

Добавлено 09-05-2014 21:31:10

bunda1 пишет

Мда, а я сам не сообразил.

Не, про скорость не очевидно, но я как-то проверял. :) Впрочем, я что-то думал, что там было более похоже на этот случай, так что можно тоже протестировать.

Добавлено 09-05-2014 21:34:08
Кстати, а

Выделить код

Код:

const lighted = finder._highlight || finder._highlightDoc;

(или наоборот) не поможет?
Но это, конечно, только если эту функцию просто переименовали.

Отредактировано Infocatcher (09-05-2014 21:34:08)


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

Отсутствует

 

№771009-05-2014 21:46:45

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

Re: Custom Buttons

Таки да, работает:

Выделить код

Код:

var lighted = (finder._highlight || finder._highlightDoc).bind(finder);

но нужна передать правильный this через bind

Отсутствует

 

№771109-05-2014 23:33:43

beggrr
Участник
 
Группа: Members
Зарегистрирован: 04-02-2014
Сообщений: 128
UA: Firefox 26.0

Re: Custom Buttons

sinteros пишет

Но самое неприятное все же это жуткая задержка когда нажимаешь на кнопку и отсутствие задержки при нажатии  ctrl+t.

sinteros
Вроде бы не должно быть жуткой задержки... Ну попробуйте еще так

Выделить код

Код:

BrowserOpenTab();
Infocatcher пишет

https://github.com/Infocatcher/Delayed_Startup

Я правильно понял, что надо положить все эти файлы в одну папку и запустить батник, а он из них сделает расширение?

Отсутствует

 

№771210-05-2014 09:27:44

sinteros
Участник
 
Группа: Members
Зарегистрирован: 18-07-2013
Сообщений: 11
UA: Firefox 30.0

Re: Custom Buttons

beggrr пишет
sinteros пишет

Но самое неприятное все же это жуткая задержка когда нажимаешь на кнопку и отсутствие задержки при нажатии  ctrl+t.

Вроде бы не должно быть жуткой задержки... Ну попробуйте еще так

Выделить код

Код:

BrowserOpenTab();

В принципе тоже самое. Родной диал дает небольшую задержку а сторонний в 2 раза больше. Периодически задержка проявляется и при нажатии клавиш ctrl+t. Может конечно это мои придирки. И именно так все и должно быть.
Просто я сравниваю с Оперой в которой пожалуй самый плавный и быстрый диал с нулевой задержкой и вполне нормальным функционалом.

Спасибо вам за помощь! Но дело похоже в самой мозиле.

Отсутствует

 

№771310-05-2014 11:25:01

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

Re: Custom Buttons

beggrr пишет

Я правильно понял, что надо положить все эти файлы в одну папку и запустить батник, а он из них сделает расширение?

Да, но «сделает» – это громко сказано, можно упаковать файлы в ZIP любым другим способом.
Или вообще скачать отсюда: https://github.com/Infocatcher/Delayed_Startup/releases (но там не самая новая версия).


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

Отсутствует

 

№771410-05-2014 13:36:28

beggrr
Участник
 
Группа: Members
Зарегистрирован: 04-02-2014
Сообщений: 128
UA: Firefox 26.0

Re: Custom Buttons

Infocatcher пишет

можно упаковать файлы в ZIP любым другим способом.

Вот я попробовал сам упаковать и что-то пошло не туда. Что я сделал:

  • Скачал файлы bootstrap.js, chrome.manifest, delayedStartup.js, install.rdf
  • Упаковал их в архив ZIP
  • Сменил расширение на xpi, назвал архив delayedStartup@infocatcher.xpi и положил в папку extensions

Запустил ФФ, он попросил разрешения установить расширение, я разрешил и браузер закрылся.
Теперь при запуске он вылетает через полсекунды и я ничего с ним сделать не могу. В файле extensions.ini расширение delayedStartup отсутствует, а удаление самого архива из папки extensions ничего не дает.

Может дело в том, что я пытался установить на 20-ю версию?

Отсутствует

 

№771510-05-2014 19:35:20

villa7
Участник
 
Группа: Members
Зарегистрирован: 21-07-2012
Сообщений: 2235
UA: Firefox 29.0

Re: Custom Buttons

В [firefox] 29 Не работают кнопки в новой всплывающей панели, пока не нажмешь на кнопку вызова этой панели, потом начинают работать, как исправить?

Отредактировано villa7 (10-05-2014 19:36:12)


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№771610-05-2014 20:14:04

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

Re: Custom Buttons

villa7 пишет

В [firefox] 29 Не работают кнопки в новой всплывающей панели, пока не нажмешь на кнопку вызова этой панели, потом начинают работать, как исправить?

18-12-2013 08:52:07 :/

Отсутствует

 

№771710-05-2014 20:59:43

villa7
Участник
 
Группа: Members
Зарегистрирован: 21-07-2012
Сообщений: 2235
UA: Firefox 29.0

Re: Custom Buttons

bunda1
Ага, заработало, спасибо. А если не трудно, можешь глянуть VT2, очень нужна, и достойной замены нет, а Dumby молчит.
https://forum.mozilla-russia.org/viewto … 14#p611514


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№771810-05-2014 21:16:03

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

Re: Custom Buttons

villa7 пишет

bunda1
Ага, заработало, спасибо. А если не трудно, можешь глянуть VT2, очень нужна, и достойной замены нет, а Dumby молчит.
https://forum.mozilla-russia.org/viewto … 14#p611514

Ок

Отсутствует

 

№771910-05-2014 21:18:18

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

Re: Custom Buttons

beggrr пишет

Вот я попробовал сам упаковать и что-то пошло не туда. Что я сделал:

  • Скачал файлы bootstrap.js, chrome.manifest, delayedStartup.js, install.rdf
  • Упаковал их в архив ZIP
  • Сменил расширение на xpi, назвал архив delayedStartup@infocatcher.xpi и положил в папку extensions

Ну, вроде, верно все. Только можно *.xpi просто перетащить на окно браузера, он сам предложит установить.
И скачать проще все разом: https://github.com/Infocatcher/Delayed_ … master.zip

beggrr пишет

Запустил ФФ, он попросил разрешения установить расширение, я разрешил и браузер закрылся.
Теперь при запуске он вылетает через полсекунды и я ничего с ним сделать не могу. В файле extensions.ini расширение delayedStartup отсутствует, а удаление самого архива из папки extensions ничего не дает.

Может дело в том, что я пытался установить на 20-ю версию?

Странно, у меня на 20-ю ставится (и работает).
Если в папке extensions ничего нет, то падает уже не расширение...


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

Отсутствует

 

№772011-05-2014 00:16:03

beggrr
Участник
 
Группа: Members
Зарегистрирован: 04-02-2014
Сообщений: 128
UA: Firefox 26.0

Re: Custom Buttons

Попытки реанимировать браузер ни к чему не привели. Он упорно вылетает сразу после запуска.

Я создал новый профиль и на него это расширение установилось как по маслу. Причем тем же самым способом, я специально старался воспроизвести свои вчерашние действия - думал может увижу причину. Но нет, пока никаких осложнений.
   
А что ж могло случиться со старым профилем? До вчерашней установки delayedStartup не только крэшей не было, а и жалоб на тормоза или т. п.

Отредактировано beggrr (11-05-2014 00:21:45)

Отсутствует

 

№772111-05-2014 15:01:08

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

Re: Custom Buttons

beggrr пишет

А что ж могло случиться со старым профилем? До вчерашней установки delayedStartup не только крэшей не было, а и жалоб на тормоза или т. п.

Не знаю, подобного у меня никогда не было. Можно попробовать последовательно переносить в новый работающий профиль данные из старого, чтобы отловить причину падений.
Или наоборот – удалять из старого, пока не запустится. Скажем, попробовать сперва удалить addons.* и extensions.*.


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

Отсутствует

 

№772212-05-2014 23:14:11

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

Re: Custom Buttons


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

Отсутствует

 

№772313-05-2014 16:49:00

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 29.0

Re: Custom Buttons

Помогите, пожалуйста, приделать счётчик количества совпадений к панели поиска. К стандартной панели, не кнопке.
Я взял за основу этот код

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

Выделить код

Код:

var curHit, allHits, lastCurHit;
const fff = gFindBar._findField,
      lab = fff.parentNode.insertBefore( document.createElement("label"), fff ),
      nrm = Ci.nsISelectionController.SELECTION_NORMAL;
      lab.id = "hits";
addDestructor(function() fff.parentNode.removeChild(lab) );

function updateHits(arg) {
   if ( gFindBar.hidden ) return;
   var win = arg instanceof Ci.nsIDOMWindow && arg || content;
   var finder = (fxVersion > 26 ? gBrowser.finder : gFindBar);
   if ( win == content ) curHit = allHits = 0;
   var word = fff.value;
   var controller = finder._getSelectionController(win);
   var doc = win.document;
   
   if ( word && controller && doc && doc.documentElement ) {
        var body = doc instanceof HTMLDocument && doc.body ? doc.body : doc.documentElement;

        var searchRange = doc.createRange();
        searchRange.selectNodeContents(body);
        var startPt = searchRange.cloneRange();
        startPt.collapse(true);
        var endPt = searchRange.cloneRange();
        endPt.collapse(false);fxVersion


На старых версиях он у меня работал, а сейчас нет.

Отредактировано rbfyec (13-05-2014 16:49:50)

Отсутствует

 

№772413-05-2014 20:16:17

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

Re: Custom Buttons

rbfyec пишет

Помогите, пожалуйста, приделать счётчик количества совпадений к панели поиска. К стандартной панели, не кнопке.

Выделить код

Код:

const forceFind = false, forceFindCS = true;

// Приклеить элемент findbar к странице( #appcontent ) ................................
const fbID = "FindToolbar-m";
delete window.gFindBar;
window.gFindBar = document.getElementById(fbID);
if (!gFindBar) {
    gFindBar = gBrowser.parentNode.insertBefore(document.createElement("findbar"), gBrowser);
    gFindBar.id = fbID;
    gFindBar.setAttribute("browserid", "content");
    gFindBar.clientTop;
    delete window.gFindBarInitialized;
    window.gFindBarInitialized = true;
    gFindBar._selectionMaxLen = 1000;    // лимит символов для поиска
}


// Ctrl+F, показать - скрыть панель поиска ....................................
function toggleFindbar() gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close();
addEventListener("keydown", function(e)
    e.keyCode == e.DOM_VK_F && e.ctrlKey && !e.altKey && !e.shiftKey
    && !e.preventDefault() && toggleFindbar()
, false);
this.onclick = function(e) { if (!e.button) toggleFindbar() };


// Показать количество совпадений на панели поиска ................................
const textbox = gFindBar.getElement("findbar-textbox"),
nrm = Ci.nsISelectionController.SELECTION_NORMAL, labID = "hits-m";
var lab = document.getElementById(labID);
if (!lab) {
    lab = textbox.parentNode.insertBefore(document.createElement("label"), textbox);
    lab.id = labID;
}
var curHit, allHits;

function updateHits(arg) {
    if (gFindBar.hidden) return;
    var word = textbox.value;
    if (!word) {
        lab.value = "0/0";
        textbox.removeAttribute("status");
        return;
    }
    var win = arg instanceof Window && arg || content;
    if (win == content) curHit = allHits = 0;
    var findbarFinder = gFindBar._browser.finder;
    var controller = findbarFinder._getSelectionController(win);
    var doc = win.document;

    if (word && controller && doc && doc.documentElement) {
        var body = doc instanceof HTMLDocument && doc.body ? doc.body : doc.documentElement;

        var searchRange = doc.createRange();
        searchRange.selectNodeContents(body);
        var startPt = searchRange.cloneRange();
        startPt.collapse(true);
        var endPt = searchRange.cloneRange();
        endPt.collapse(false);

        var retRange = null;
        var finder = Cc["@mozilla.org/embedcomp/rangefind;1"].createInstance().QueryInterface(Ci.nsIFind);
        finder.caseSensitive = gFindBar._shouldBeCaseSensitive(word);

        while ((retRange = finder.Find(word, searchRange, startPt, endPt))) {
            allHits++;
            if (!curHit) {
                var sel = controller.getSelection(nrm), range;
                if (sel.toString()) range = sel.getRangeAt(0);
                else {
                    var editableNode = findbarFinder._getEditableNode(retRange.startContainer);
                    if (editableNode) sel = editableNode.editor.selectionController.getSelection(nrm);
                    if (sel.toString()) range = sel.getRangeAt(0);
                }
                var comp = range && ["startContainer", "endContainer", "startOffset", "endOffset"]
                    .every(function(prop) range[prop] == retRange[prop]);
                if (comp) curHit = allHits;
            }
            startPt = retRange.cloneRange();
            startPt.collapse(false);
        }
        Array.forEach(win.frames, function(frame) updateHits(frame));
    }
    if (win != content) return;
    allHits ? textbox.removeAttribute("status") : textbox.setAttribute("status", "notfound");
    forceFind && !curHit && allHits && gFindBar._find();
    lab.value = curHit + "/" + allHits;
}
updateHits();


gFindBar.updateHits = updateHits;
function insUpd(methodName, code) {
    const method = gFindBar[methodName];
    gFindBar[methodName] = Function("arguments.callee.method.apply(this, arguments);" + (code || "") + " this.updateHits();");
    gFindBar[methodName].method = method;
    addDestructor(function() gFindBar[methodName] = method);
}
insUpd("_find"); insUpd("_findAgain");
insUpd("_setCaseSensitivity", forceFindCS && " this._find();");


const progressListener = {
    onStateChange: function(wpr, req, state)
        state & Ci.nsIWebProgressListener.STATE_STOP && setTimeout(updateHits, 320),
    onLocationChange: function(wpr, req) !req && updateHits()
};
addDestructor(function() gBrowser.removeProgressListener(progressListener));


function onFindbar() {
    gBrowser[(gFindBar.hidden ? "remove" : "add") + "ProgressListener"](progressListener);
    !gFindBar.hidden && updateHits();
}
onFindbar();
const observer = MutationObserver(onFindbar);
observer.observe(gFindBar, { attributes: true, attributesFilter: ["hidden"] });
addDestructor(function() observer.disconnect());

Отсутствует

 

№772513-05-2014 23:16:03

roadrunner
Участник
 
Группа: Members
Зарегистрирован: 18-08-2011
Сообщений: 34
UA: Opera 21.0

Re: Custom Buttons

bunda1
панель вверху окрывается  с этим кодом в firefox 28,можно оставить чтобы внизу открывалась?

Отредактировано roadrunner (13-05-2014 23:17:19)

Отсутствует

 

Board footer

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