таймер автозакрытия панели (с момента как файндбар перестал быть :selected)
Проще изначально открывать самозакрывающийся быстрый поиск (нажать /).
Если на нем нужны кнопки, то
И настройка accessibility.typeaheadfind.timeout
При reloadSessions: true используется утянутый из Session Manager'а механизм обновления восстанавливаемых вкладок.
А еще с ним баг какой-то. Утянутая часть кода работает, но в SM вкладки обновляются, а при открытии из кнопки – нет.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Установил я кнопку Session Bookmarks 0.2.0pre21, но это совсем не то что мне надо, мне нужно чтобы при нажатии на кнопку, URL текущей страницы записывался в (указанный в коде) txt-файл в виде простого списка в таком виде :
Отсутствует
Infocatcher, подскажи, пожалуйста, что нужно изменить/добавить в коде:
var t = content.getSelection().toString(); if(t) {gBrowser.selectedTab = gBrowser.addTab("http://www.youtube.com/results?search_query="+t+"&aq=f");} else {getBrowser (). selectedTab = getBrowser (). addTab ("http://www.youtube.com/"); }
Аналогичный поиск по Гуглу кириллицу понимает, отображает и ищет корректно, а Ютуб - нет.
Отредактировано slbgz (31-07-2011 01:28:46)
Отсутствует
OverClocked
Поставь QuickNote 0.6.0.6, не 0.6.0.10
потом эту кнопку
при нажатии она сохраняет адрес страницы (соответствующая галочка в настройках) в этот блокнот, потом это можно сохранить в txt-файл
Отредактировано LongLogin (30-07-2011 21:13:13)
Отсутствует
slbgz
Это от сервера зависит, но обычно надо делать encodeURIComponent() для текста запроса.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
middlemouse.paste = true, но только для всех полей, не только файндбара.
спасибо, сойдёт
Проще изначально открывать самозакрывающийся быстрый поиск (нажать /).
ну привычка у меня ctrl+F юзать а не мучаться с этим / который не работает если раскладка выбрана не английская. Так что всё равно нужно кнопку, которая хотя бы подменяет хоткей ctrl+f на /
а раз уж кнопка - то неплохо бы и счётчик найденных фраз как в той готовой КБ.
удали в коде
ок, спасибо
setTimeout(function(FindBarclose) {gFindBar.close(); }, 10000);
gFindBar.addEventListener("???????", FindBarclose, false);
пока еще не умею, может позже
А можно лучше тогда просто вызывать не ту панель что по CTRL+F, а ту, что по / как написал Infocatcher?
mzfx
Отсутствует
А можно лучше тогда просто вызывать не ту панель что по CTRL+F, а ту, что по / как написал Infocatcher?
папробую.
можно в кнопке
//настройка функций кликов мыши(Mouse Click settings)...................................................
this.leftclick = function(evt){
gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close();
заменить на
gFindBar.startFind(gFindBar.FIND_TYPEAHEAD);
gFindBar._setFindCloseTimeout();
падрегулировать
accessibility.typeaheadfind.timeout
но теперь FindBar будет закрываться от любова клика на странице
Отредактировано bunda1 (30-07-2011 23:21:41)
Отсутствует
LongLogin
Большое вам спасибо!!
Отсутствует
OverClocked
добавляет пункт в меню таба - Copy All URLs
/*Initialization Code*/
//Copy All URLs (function() { var templates = { 'text':{ 'header':'', 'body':'%title%\n%url%\n\n', 'footer':'' } }; var htmlEscape = function(s) { s = s.replace(/&/g, "&"); s = s.replace(/>/g, ">"); s = s.replace(/</g, "<"); s = s.replace(/"/g, """); return s; }; var getTabs = function(){ var tabNodes = document.popupNode.parentNode.childNodes; var tabs = new Array; for (i=0;i<tabNodes.length;i++){ tabs.push({'title':tabNodes[i].label, 'url':gBrowser.getBrowserForTab(tabNodes[i]).contentWindow.location.href}); } return tabs; }; var formOutput = function(templateId, tabs){ var string = new String; var template = templates[templateId]; string += template.header; for(i=0;i<tabs.length;i++){ string += template.body.replace(/%title%/g, htmlEscape(tabs[i].title)).replace(/%url%/g, htmlEscape(tabs[i].url)); } return string += template.footer; } var putClipboard = function(string){ Cc["@mozilla.org/widget/clipboardhelper;1"] .getService(Ci.nsIClipboardHelper) .copyString(string); dump("[save tabs]"+"copied to Clipboard\n"); } var main = function(templateId){ var tabs = getTabs(); var output = formOutput(templateId, tabs); putClipboard(output); }; var menuitem1 = document.createElement("menuitem"); menuitem1.setAttribute("label", "[text] Copy All URLs"); menuitem1.addEventListener("command", function() { main('text'); }, false); setTimeout(function() { gBrowser.mStrip.childNodes[1].appendChild(document.createElement("menuseparator")); gBrowser.mStrip.childNodes[1].appendChild(menuitem1); }, 0); })();
Отредактировано bunda1 (31-07-2011 00:39:50)
Отсутствует
bunda1 пишетно теперь FindBar будет закрываться от любова клика на странице
так не катит
может позже что то придумаю.
//autoclose Findbar.......... (function(){ function go() {gFindBar.close();} function on() { timeoutId = setTimeout(go, 5000) } function off() { clearTimeout(timeoutId) } gFindBar.addEventListener('click',off, false); gBrowser.addEventListener('mousedown',on, false); })();
красиво, но неработает как надо.
Отредактировано bunda1 (31-07-2011 02:28:00)
Отсутствует
Session Bookmarks 0.2.0pre22 (2011-07-31)
Исправлено обновление при восстановлении сессии (reloadSessions: true).
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
iDev.Pi
/*Initialization Code*/
//Findbar autoclose .......... (function(){ this.clickPage = function(event) {gBrowser.addEventListener('mousedown',on, false);}; function go() { clickPage(event); gFindBar.close();} function on() { gBrowser.removeEventListener('mousedown',on, false); timeoutId = setTimeout(go, 5000)} function off() { clickPage(event); clearTimeout(timeoutId)} gFindBar.addEventListener('click',off, false); clickPage(event); })();
timeoutId = setTimeout(go, 5000)} это микросекунды
Отредактировано bunda1 (31-07-2011 05:09:59)
Отсутствует
//Findbar autoclose ..........
а зачем? если вызывать не дефолтный файндбар, а файндбар по кнопке "/" то он подчиняется префу accessibility.typeaheadfind.timeout.
если можно, то пожалуйста, просто подправь для меня изначальную кнопку, только чтобы:
1. По ctrl+f вызывался файндбар кнопки "/"
2. Работал каунтер найденных слов на странице как у тебя в кнопке
3. В кнопку поместить стиль #FindToolbar > .findbar-container > * { display: -moz-box !important; } и всё.
4. С тех пор как я выставил себе middlemouse.paste в true - я теперь могу мидл-кликать на textarea, а не на кнопку, но было бы совсем зашибись иметь хоткей ctrl+alt+f который бы делал сразу 2 действия - открывал бы файндбар и вставлял бы в поиск текст из буфера. Эту фичу, кстати, можешь добавить и себе в кнопку - вдруг кому удобней с клавиатуры поиск делать, не трогая мышку.
Получившийся код, я так понимаю, весь будет для "инициализации", а значит его можно будет запихнуть в другую имеющуюся кнопку, что сэкономит место на тулбаре.
mzfx
Отсутствует
iDev.Pi
позже сделаю.
2. Работал каунтер найденных слов на странице как у тебя в кнопке
не понял o чем речь
вызывался файндбар кнопки "/"
файндбар кнопки "/" будет закрываться от любова клика на странице, неудобно.
Отсутствует
не понял o чем речь
счётчик кол-ва найденных символосочетаний из поискового запроса на странице. У тебя же в кнопке он вроде есть?
файндбар кнопки "/" будет закрываться от любова клика на странице, неудобно.
ааа, так это такое поведение у "/"... раньше как-то и не замечал (пользуюсь то CTRL+F + дополнением авто скрывающим его по таймеру).
Отредактировано iDev.Pi (31-07-2011 06:38:11)
mzfx
Отсутствует
если можно, то пожалуйста, просто подправь для меня изначальную кнопку, только чтобы:
1. По ctrl+f вызывался файндбар кнопки "/"
2. Работал каунтер найденных слов на странице как у тебя в кнопке
3. В кнопку поместить стиль #FindToolbar > .findbar-container > * { display: -moz-box !important; } и всё.
4. было бы совсем зашибись иметь хоткей ctrl+alt+f который бы делал сразу 2 действия - открывал бы файндбар и вставлял бы в поиск текст из буфера. Эту фичу, кстати, можешь добавить и себе в кнопку - вдруг кому удобней с клавиатуры поиск делать, не трогая мышку.Получившийся код, я так понимаю, весь будет для "инициализации", а значит его можно будет запихнуть в другую имеющуюся кнопку, что сэкономит место на тулбаре.
изначальную кнопку удалить, код запихнуть в другую имеющуюся кнопку, в инициализацию.
//FindBar Key config............................................ addEventListener('keydown', function (event){ //ctrl+ F... if ((event.ctrlKey) && ((event.keyCode == 0x46) || (event.keyCode == 0x4A))) { event.preventDefault(); event.stopPropagation(); gFindBar.startFind(gFindBar.FIND_TYPEAHEAD); gFindBar._setFindCloseTimeout();} //ctrl+ ALT... if ((event.ctrlKey) && ((event.keyCode == 0x12) || (event.keyCode == 0x4A))) { gFindBar.startFind(gFindBar.FIND_TYPEAHEAD); gFindBar._setFindCloseTimeout(); goDoCommand("cmd_selectNone"); goDoCommand("cmd_paste");} }, false); //find bar, показать количество совпадений(find bar,show the number of matches).................... (function() { //add label to findbar var status = document.getAnonymousElementByAttribute(gFindBar, 'anonid', 'match-case-status'); var sep = document.createElement("toolbarspacer"); var count = document.createElement("label"); count.hidden = true; status.parentNode.insertBefore(sep, status); status.parentNode.insertBefore(count, status);//findbar-container gFindBar.__proto__._foundMatches = count; gFindBar.__proto__._updateMatchesCount = function(aRes) { if (!this._updateMatchCountTimeout) window.clearTimeout(this._updateMatchCountTimeout); this._updateMatchCountTimeout = window.setTimeout(function(aRes, aSelf) { aSelf._updateMatchesCountWorker(aRes); }, 0, aRes, this); } gFindBar.__proto__._updateMatchesCountWorker = function(aRes) { var word = this._findField.value; if (aRes == this.nsITypeAheadFind.FIND_NOTFOUND || !word) { this._foundMatches.hidden = true; this._foundMatches.value = ""; } else { var matchesCount = this._countMatches(word).toString(); if (matchesCount != "0") { if (matchesCount == "1") this._foundMatches.value = matchesCount +" \hits "; else if (matchesCount == "-1") { var matchLimit = 100; this._foundMatches.value = " \> 100 hits"; // var key = (matchLimit > 1000) ? "Decrease" : "Increase"; } else this._foundMatches.value = matchesCount +" \hits"; this._foundMatches.hidden = false; } else { this._foundMatches.hidden = true; this._foundMatches.value = ""; } window.clearTimeout(this._updateMatchCountTimeout); } } gFindBar.__proto__._countMatches = function(aWord, aWindow) { var win = aWindow || this.browser.contentWindow; var countFound = 0; for (var i = 0, count; win.frames && i < win.frames.length; i++) { if ((count = this._countMatches(aWord, win.frames[i])) != -1) countFound += count; else return count; } var doc = win.document; if (!doc || !(doc instanceof HTMLDocument)) return countFound; var body = doc.body; var count = body.childNodes.length; var searchRange = doc.createRange(); var startPt = doc.createRange(); var endPt = doc.createRange(); searchRange.setStart(body, 0); searchRange.setEnd(body, count); startPt.setStart(body, 0); startPt.setEnd(body, 0); endPt.setStart(body, count); endPt.setEnd(body, count); var retRange = null; var finder = Components.classes["@mozilla.org/embedcomp/rangefind;1"] .createInstance() .QueryInterface(Components.interfaces.nsIFind); finder.caseSensitive = this._shouldBeCaseSensitive(aWord); var matchLimit = 100; while ((retRange = finder.Find(aWord, searchRange, startPt, endPt))) { if (this._rangeIsVisible(retRange, win)) { if (this._findMode == this.FIND_LINKS) { if (this._rangeStartsInLink(retRange)) ++ countFound; } else ++ countFound; } if (countFound == matchLimit) { countFound = -1; break; } startPt = doc.createRange(); startPt.setStart(retRange.startContainer, retRange.startOffset + 1); } return countFound; } gFindBar.__proto__._rangeIsVisible = function(aRange, aWindow) { var node = aRange.startContainer; if (node.nodeType == node.ELEMENT_NODE) { if (node.hasChildNodes) { var childNode = node.childNodes[aRange.startOffset]; if (childNode) node = childNode; } } while (node && node.nodeType != node.ELEMENT_NODE) node = node.parentNode; // There is no perfect way to check if a node is visible in JavaScript, // so use the best measures we can have if (node) { var style = aWindow.getComputedStyle(node, ""); if (style) { if (style.visibility == "hidden" || style.visibility == "collapse" || style.display == "none") return false; if (style.left != "auto" && style.width != "auto") if (style.left < 0 && style.left + style.width < 0) return false; if (style.top != "auto" && style.height != "auto") if (style.top < 0 && style.top + style.height < 0) return false; } } return true; } gFindBar.__proto__._rangeStartsInLink = function(aRange) { var isInsideLink = false; var node = aRange.startContainer; if (node.nodeType == node.ELEMENT_NODE) { if (node.hasChildNodes) { var childNode = node.childNodes[aRange.startOffset]; if (childNode) node = childNode; } } const XLink_NS = "http://www.w3.org/1999/xlink"; do { if (node instanceof HTMLAnchorElement) { isInsideLink = node.hasAttribute("href"); break; } else if (typeof node.hasAttributeNS == "function" && node.hasAttributeNS(XLink_NS, "href")) { isInsideLink = (node.getAttributeNS(XLink_NS, "type") == "simple"); break; } node = node.parentNode; } while (node); return isInsideLink; } //insert count function to original eval("gFindBar._updateCaseSensitivity=" + gFindBar._updateCaseSensitivity.toString().slice(0, -1) + "this._updateMatchesCount();}"); eval("gFindBar._updateStatusUI=" + gFindBar._updateStatusUI.toString().slice(0, -1) + "this._updateMatchesCount();}"); })(); // FindBar "/" style....................................................................... var sId = "__customButtonsStyle__" + this.id; // Unique style "id" var cssStr = <><![CDATA[ #FindToolbar > .findbar-container > * { display: -moz-box !important; } ]]></> .toString() .replace(/%button%/g, "#" + this.id); function sheet(cssStr, removeFlag) { var cc = Components.classes; var sss = cc["@mozilla.org/content/style-sheet-service;1"] .getService(Components.interfaces.nsIStyleSheetService); var ios = cc["@mozilla.org/network/io-service;1"] .getService(Components.interfaces.nsIIOService); var data = "data:text/css," + encodeURIComponent(cssStr); var uri = ios.newURI(data, null, null); if(sss.sheetRegistered(uri, sss.AGENT_SHEET)) sss.unregisterSheet(uri, sss.AGENT_SHEET); if(removeFlag) return; sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET); window[sId] = cssStr; } if(!(sId in window)) sheet(cssStr); else if(window[sId] != cssStr) { sheet(window[sId], true); sheet(cssStr); }
Отредактировано bunda1 (31-07-2011 13:36:26)
Отсутствует
bunda1
ооо, спасибо огромное! то, что надо!
в принципе-то, что квик файндбар скрывается при клике на странице - может даже и к лучшему.
только почему ты хоткей сделал ctrl+alt а не ctrl+alt+f? так не очень удобно.
и ещё мини-баг (или даже мини-фича?): если выделить что-то на странице и нажать ctrl-c, то оно уходит в буфер обмена, но ведь если я нажму ctrl-f то оно не должно автоматом же вставлять из буфера текст в текстовое поле поиска, однако если скопированный в буфер текст остаётся выделенным, то именно так и происходит. Если выделение снять - то файндбар открывается без автовставки текста из буфера.
я не уверен баг ли это или фича, потому что, в принципе, так мне даже и мидл-кликать не надо после ctrl-c + ctrl-f, но с другой стороны для этого же есть ctrl+alt теперь.
Если это фича, то её бы слегка переделать: сделать так, чтобы ctrl+alt сначала делал бы проверку: "а есть ли чего-нибудь выделенной юзером на странице?" и если "да" - то "открыть поиск по выделенному элементу", а если "нет" - то "открыть поиск по тексту из буфера". Это будет эдакой "умной" проверкой. Ну а CTRL+F, всё-таки, я считаю не должен иметь такую проверку на выделение текста на странице.
mzfx
Отсутствует
bunda1
только почему ты хоткей сделал ctrl+alt а не ctrl+alt+f? так не очень удобно.
Если это фича, то её бы слегка переделать: сделать так, чтобы ctrl+alt сначала делал бы проверку: "а есть ли чего-нибудь выделенной юзером на странице?" и если "да" - то "открыть поиск по выделенному элементу", а если "нет" - то "открыть поиск по тексту из буфера". Это будет эдакой "умной" проверкой. Ну а CTRL+F, всё-таки, я считаю не должен иметь такую проверку на выделение текста на странице.
ctrl+alt а не ctrl+alt+f - просто, пока не умею по другому,
это не баг или фича, это Firefox default.
проверку по ctrl+alt не могу сделать, не умею.
Отсутствует
Session Bookmarks 0.2.0pre22 (2011-07-31)
Исправлено обновление при восстановлении сессии (reloadSessions: true).
На последних версиях перестало работать перетаскивание закладок ... к хорошему привыкаешь быстро, раньше работало..
Отредактировано slbgz (31-07-2011 18:00:19)
Отсутствует
Session Bookmarks 0.2.0pre23 (2011-07-31)
Исправлено перетаскивание закладок.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Прошу помощи.
Как зделать что бы это меню менялась зависимости от настроек в about:config
true показывать ●, false не показывать?
Иными словами;
как переключить this.circle=""; на this.circle="●"; если if (custombuttonsUtils. getPrefs ("FindBar.autohide", true))
как переключить this.nocircle=""; на this.nocircle="●"; если if (custombuttonsUtils. getPrefs ("FindBar.(ctrl+ALT)find_from_clipboard", true))
Как сделать это красиво?
код меню
this.circle = "●"; this.nocircle = ""; var Cb = custombuttons; this.FBautohide = function() { // toggle preference var s = "FindBar.autohide"; custombuttons.setPrefs(s, !custombuttons.getPrefs(s)); } this.FBfind_Key = function() { // toggle preference var s = "FindBar.(ctrl+ALT)find_from_clipboard"; custombuttons.setPrefs(s, !custombuttons.getPrefs(s)); } // Our menu items this.ss = [ { label: this.circle+'FindBar(7 sec) autohide', cmd: 'document.popupNode.FBautohide()', sItemId: '' }, { label: this.nocircle+'Findbar(ctrl+ ALT),find from clipboard', cmd: 'document.popupNode.FBfind_Key()', sItemId: ''}]; // Our Initialization function for creating the context menu, setting up menuitems and telling // custombuttons2 extension to put cb context in a submenu this.mObj = Cb.getCbContextObj(this); this.init = function(x) { x.mObj.setSub(); var nItem = {}, mItem = {}; document.getElementById(CB2const.sCBCtxtMenu).setAttribute("oncommand", "event.stopPropagation()"); for(var i in x.ss) { nItem = new x.mObj.getItem(); nItem.id = 'Note'; nItem.label = x.ss[i].label; nItem.value = String(i); mItem = x.mObj.insertBefore(nItem , x.mObj.oMenu.lastChild); this.ss[i].sItemId = mItem.id; mItem.setAttribute('oncommand',x.ss[i].cmd) } x.mObj.getItem(); nItem = x.mObj.getItem(); nItem.id = 'Note'; this.separator = x.mObj.insertBefore( nItem , x.mObj.oMenu.lastChild); } this.init(this);
код кнопки, в инициализацию.
this.image = "http://www.mozilla.org/favicon.ico"; this.circle = "●"; this.nocircle = ""; //проверить наличие строк в about:config и создать если не существует(Add preferences)........................................ var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService); var f; try{ f = prefs.getBoolPref("FindBar.autohide"); } catch(e){ prefs.setBoolPref("FindBar.autohide", false); } try{ f = prefs.getBoolPref("FindBar.(ctrl+ALT)find_from_clipboard"); } catch(e){ prefs.setBoolPref("FindBar.(ctrl+ALT)find_from_clipboard", false); } //настройка функций кликов мыши(Mouse Click settings)................................................... this.leftclick = function(evt){ gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close(); } this.midclick = function(evt) { gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close(); goDoCommand("cmd_selectNone"); goDoCommand("cmd_paste"); } this. gQuot = {}; this. gQuot. __proto__ = custombuttons. gQuot; this. gQuot. dcDelay = 0; this. setAttribute ('onclick', 'this.gQuot.mHandler(event, this)'); this.setAttribute("onmouseover", "if (custombuttons) custombuttons.ButtonBrt(event);" ); this.setAttribute("onmouseout", "if (custombuttons) custombuttons.ButtonBrt(event);" ); //настройка меню(CB menu settings)................................................... var Cb = custombuttons; this.FBautohide = function() { // toggle preference var s = "FindBar.autohide"; custombuttons.setPrefs(s, !custombuttons.getPrefs(s)); } this.FBfind_Key = function() { // toggle preference var s = "FindBar.(ctrl+ALT)find_from_clipboard"; custombuttons.setPrefs(s, !custombuttons.getPrefs(s)); } // Our menu items this.ss = [ { label: this.circle+'FindBar(7 sec) autohide', cmd: 'document.popupNode.FBautohide()', sItemId: '' }, { label: this.nocircle+'Findbar(ctrl+ ALT),find from clipboard', cmd: 'document.popupNode.FBfind_Key()', sItemId: ''}]; // Our Initialization function for creating the context menu, setting up menuitems and telling // custombuttons2 extension to put cb context in a submenu this.mObj = Cb.getCbContextObj(this); this.init = function(x) { x.mObj.setSub(); var nItem = {}, mItem = {}; document.getElementById(CB2const.sCBCtxtMenu).setAttribute("oncommand", "event.stopPropagation()"); for(var i in x.ss) { nItem = new x.mObj.getItem(); nItem.id = 'Note'; nItem.label = x.ss[i].label; nItem.value = String(i); mItem = x.mObj.insertBefore(nItem , x.mObj.oMenu.lastChild); this.ss[i].sItemId = mItem.id; mItem.setAttribute('oncommand',x.ss[i].cmd) } x.mObj.getItem(); nItem = x.mObj.getItem(); nItem.id = 'Note'; this.separator = x.mObj.insertBefore( nItem , x.mObj.oMenu.lastChild); } this.init(this); //FindBar, автоматически закрыть(autohide Findbar)................................. (function(){ this.clickPage = function(event) {gBrowser.addEventListener('mousedown',on, false);}; function go() { if (custombuttonsUtils. getPrefs ("FindBar.autohide", true)) { gFindBar.close(); clickPage(event);} else clickPage(event); } function on() { gBrowser.removeEventListener('mousedown',on, false); timeoutId = setTimeout(go, 3000)}//7 сек(7 sec) function off() { clickPage(event); clearTimeout(timeoutId)} gFindBar.addEventListener('click',off, false); clickPage(event); })(); //FindBar, сочетания клавиш(Key config)......................................................... addEventListener('keydown', function (event){ //FindBar(ctrl+ F)показать - скрыть(Toggle Find Bar)......... if ((event.keyCode==0x46)&&(event.ctrlKey)) { event.preventDefault(); event.stopPropagation(); gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close();} //Findbar(ctrl+ ALT), поиск по странице из буфера обмена, find from clipboard............. if (custombuttonsUtils. getPrefs ("FindBar.(ctrl+ALT)find_from_clipboard", true)) { if ((event.keyCode==0x12)&&(event.ctrlKey)) { gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close(); goDoCommand("cmd_selectNone"); goDoCommand("cmd_paste");}} //FindBar, закрыть любой клавишей клавиатуры(FindBar close, Any key keyboard).. //else{gFindBar.close();} }, false);
this.onmouseover = function() {if (custombuttonsUtils. getPrefs ("FindBar.autohide", true))this.circle ="●"; else this.circle = " ";}
так уже что то работает,но непонятно как обновить меню.
function cset(parametr) { this.par = parametr; } if (custombuttonsUtils. getPrefs ("FindBar.autohide", true)){ var cset1 = new cset('●');} else var cset1 = new cset(' '); if (custombuttonsUtils. getPrefs ("FindBar.(ctrl+ALT)find_from_clipboard", true)){ var cset2 = new cset('●');} else var cset2 = new cset(' ');
Отредактировано bunda1 (04-08-2011 00:22:51)
Отсутствует