bunda1, Toggle Find+3 - а можно пожалуйста крестик слева поместить?
и сама панелька появлялась не сверху или снизу, а по центру окна
... а еще при клике по "Подсветить всё" чтобы она сворачивалась >
Отредактировано Крошка Ру (27-06-2012 06:46:28)
Отсутствует
а можно пожалуйста крестик слева поместить?
и сама панелька появлялась не сверху или снизу, а по центру окна
... а еще при клике по "Подсветить всё" чтобы она сворачивалась >
А разве крестик уже не слева ???
а
... а еще при клике по "Подсветить всё" чтобы она сворачивалась >
Как это ?
Отсутствует
А разве крестик уже не слева ???
bunda1 ,Ой - да,слева ... это просто у меня стиль Find Bar - like Google Chrome II был включён, а то слишком длинный FindBar неудобен
Добавлено 27-06-2012 09:12:46
Как это ?
То есть жму мышкой на "Подсветить всё" и всё кроме кнопок "Следующее" и "Предыдущее" пропадает (но это будет иметь смысл в том случае если возможно поместить её по центру страницы)
Добавлено 27-06-2012 09:25:45
... вообще наверное правильно было бы задать вопрос по этой кнопке >
Toggle Find+ - её переделать будет проще
Отредактировано Крошка Ру (27-06-2012 09:26:11)
Отсутствует
Отсутствует
Кстати, раз уж автор сюда заглядывает, а возможности комментирования на хабре у меня нет, небольшое замечание: заворачивать код в (function() { ... })(); необязательно – код и так запускается через new Function().
И вряд ли это изменится – может много чего поломаться, если вывалить все переменные из кнопок наружу.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Infocatcher
Спасибо за информацию, не знал. Привычная предосторожность в наследство от создания расширений. Сейчас подправлю.
Отсутствует
а то слишком длинный FindBar неудобен
В Toggle Find+3 есть режим FindBar мини
Toggle Find+ - её переделать будет проще
Не проще, и Toggle Find+3 мне болъше нравитса.
То есть жму мышкой на "Подсветить всё" и всё кроме кнопок "Следующее" и "Предыдущее" пропадает (но это будет иметь смысл в том случае если возможно поместить её по центру страницы)
Поместить её по центру страницы можно но у меня сейчас нет времени на это.
flybar :: Add-ons for Firefox
У меня к тебе большая просьба на будущее, пиши понятней. Пожалей иностранца.
okkamas_knife
Context translate Пожалуйста подскажи код которым можно закрыть окошко перевода которое появляется если нажать Перевести выделенный текст в окне. Хочу его автоматически закрывать.
Отсутствует
Можно ли сделать кнопку для MAF или простую "Сохранить в MHT", или с выбором "Сохранить в MHT или MAF"?
На 16-й странице темы есть что-то по MAF, но не работает... в готовых кнопках есть только SaveTo с использованием UnMHT.
Firefox ESR
Отсутствует
Autocopy+3(Firefox 3.6-13)
В перестала работать прикольная фишка
// Обработчик следит за кликами мыши на значке идентификации сайта в строке адреса......................................... document.getElementById("identity-box").addEventListener("click", function(event) { // настройка функций кликов мыши на значке идентификации сайта... // левый клик на кнопке if ( event.button == 0 ) { // отключать реакцию по умолчанию на левый клик event.preventDefault(); event.stopPropagation(); // открыть без запроса информацию о странице BrowserPageInfo (gBrowser. contentDocument, "generalTab") }; // правый клик на кнопке if ( event.button == 2) { // отключать реакцию по умолчанию на правую кнопку мыши event.preventDefault(); event.stopPropagation(); // скопировать адрес var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"]. getService(Components.interfaces.nsIClipboardHelper); clipboard.copyString(content.location); // значок идентификации сайта мигает красным document.getElementById("identity-box").setAttribute("style", "background: red;"); setTimeout(function() { document.getElementById("identity-box").removeAttribute("style") }, 500); }; }, true);
На днях значительно переделаю Autocopy+3(Firefox 3.6-13)
Отсутствует
bunda1
Спасибо, теперь копирует, но вот красным не мигает.
// значок идентификации сайта мигает красным
А я правильно сделал, заменив
//Copy url............................................................. var copyurl = document.getElementById("page-proxy-stack"); if (copyurl) { copyurl.addEventListener("click", function(event){ if (event.button !==2) return; //отключать реакцию по умолчанию на правую кнопку мыши event.preventDefault(); event.stopPropagation(); var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"]. getService(Components.interfaces.nsIClipboardHelper); //URL, copy to Clipboard clipboard.copyString(getBrowser().currentURI.spec); //page-proxy-stack, background: yellow var ppstack = document.getElementById("page-proxy-stack"); ppstack.setAttribute("style", "background: yellow;"); setTimeout(function() {ppstack.removeAttribute("style");}, 500); }, false)};
Отсутствует
Спасибо, теперь копирует, но вот красным не мигает.
А я правильно сделал, заменив на новый?
Да ты правильно заменил на новый. Непонятно пачему не мигает красным, может выноват какой ни будъ CSS стиль(для Stylish, userChrome.css)
Папробуй запустить этот код в другой кнопке:
И сообши о результатах.
Отсутствует
bunda1
Непонятно пачему не мигает красным, может выноват какой ни будъ CSS стиль(для Stylish, userChrome.css)
Отключил все стили, действительно мигает, ты прав. Спасибо, буду стили ковырять.
Отсутствует
В Toggle Find+3 есть режим FindBar мини
bunda1 ,Да, но он мне не нравится в таком виде
Поместить её по центру страницы можно но у меня сейчас нет времени на это.
flybar :: Add-ons for Firefox
именно он мне и припомнился
У меня к тебе большая просьба на будущее, пиши понятней. Пожалей иностранца.
Постараюсь ....а по Вашим текстам этого и не скажешь
Отредактировано Крошка Ру (28-06-2012 03:37:20)
Отсутствует
Как убрать фокус с страницы ?
Добавлено 29-06-2012 23:56:34
Отредактировано bunda1 (29-06-2012 23:56:34)
Отсутствует
okkamas_knife
Может это поможет https://loucypher.googlecode.com/svn/cu … 20this.xml
Или вот эта кнопка создаст кнопки рядом с собой на панели Make bookmarklet button
Отредактировано bunda1 (30-06-2012 17:16:04)
Отсутствует
Известная кнопочка
// ==UserScript== // @name Custom Buttons // @namespace http://www.greasespot.net/ // @include http://custombuttons.mozdev.org/drupal/content/* // @exclude http://custombuttons.mozdev.org/drupal/content/main-page // @exclude http://custombuttons.mozdev.org/drupal/content/custom-buttons-documentation // ==/UserScript== if(content.document.getElementById("sidebar-left")) { content.document.getElementById("sidebar-left").style.display = "none"; } var d = content.document; var s = d.createElement("style"); s.type = "text/css"; s.innerHTML = "#sidebar-left + td { padding-left: 0 }"; var h = d.getElementsByTagName("head")[0]; h.appendChild(s); var p = content.document.getElementsByTagName("pre"); for (var i = 0; i < p.length; i++) { p[i].style.overflow = "auto"; if (p[i].textContent.indexOf("data:image") == -1) { p[i].style.whiteSpace = "pre-wrap"; p[i].style.wordWrap = "break-word"; } } /* double click to select all */ //var d = document; //var p = d.getElementsByTagName("pre"); for (var i = 0; i < p.length; i++) { p[i].addEventListener("dblclick", function () { var s = getSelection(); var r = d.createRange(); r.selectNodeContents(this); s.removeAllRanges(); s.addRange(r); }, false); } /* fit to width */ function t(f) { var a = d.createNodeIterator(d, 1, f, false); while (a.nextNode()) {} } //var d = document; t(function (e) { var x = e.offsetLeft; var l = e.offsetParent; while (l != null) { x += l.offsetLeft; l = l.offsetParent; } var w = d.documentElement.clientWidth - x; var s = e.style; if (s.marginLeft) w -= s.marginLeft; if (s.marginRight) w -= s.marginRight; if (s.paddingLeft) w -= s.paddingLeft; if (s.paddingRight) w -= s.paddingRight; if (s.borderWidth) w -= s.borderWidth; w -= d.defaultView.innerWidth - d.documentElement.offsetWidth; if (e.tagName == "IMG") { var h = e.clientHeight * w / e.clientWidth; s.maxHeight = h; } s.maxWidth = w + "px"; });
Отсутствует
Известная кнопочка Fit to width
С подгонкой страниц под размер монитора она во многих случаях справляется вполне замечательно, но хотелось чтобы на сайтах адреса которых будут занесены в её список она делала это автоматически , то есть например когда читаешь многостраничный форум, на каждой новой странице приходится жать на кнопку вновь
Эх, Крошка Ру ну и запросы у тебя.
Можно усовершенствовать Red Link(Firefox) и объединить с Fit to width
Может сделаю на следушей неделе но проблема в том что мне чтобы сделать харошую кнопку надо напиться спиртного + энергетического напитка типа Red bull
Отредактировано bunda1 (30-06-2012 18:09:25)
Отсутствует
ну и запросы у тебя.
bunda1, Настоятельная необходимость отсутствует
Может сделаю на следушей неделе
но проблема в том что мне чтобы сделать харошую кнопку надо напиться спиртного + энергетического напитка типа Red bull
Если не снизойдёт вдохновение, то ничего страшного
Отсутствует
okkamas_knife
var appcontent = document.getElementById("appcontent"); appcontent.addEventListener("DOMContentLoaded", function(event){alert('') }, true);
Это неудачный выбор, такой код будет срабатывать многократно при загрузки текущей страницы + если открыть другие табы в фоновом режиме.
Вот так лучше:
//обработчики для табов... gBrowser.tabContainer.addEventListener("TabSelect", function(event){ //стоп, если страница загружается if (gBrowser.mCurrentTab.hasAttribute("busy")) return; alert(event) }, false); gBrowser.addEventListener("pageshow", function(event){ //стоп, если открыть другие владки в фоновом режиме. if (event.target.location.href !== getBrowser().currentURI.spec) return; alert(event) }, true);
Мне кажетса лучше заменить
на
Отредактировано bunda1 (30-06-2012 19:01:27)
Отсутствует
okkamas_knife,
var appcontent = document.getElementById("appcontent"); appcontent.removeEventListener("DOMContentLoaded", Myfunc, true); appcontent.addEventListener("DOMContentLoaded", Myfunc, true); function Myfunc(){ var clffull=content.document.location.href; var chkpoint='/'; var arrayOfStrings = clffull.split(chkpoint); var clf=arrayOfStrings[2]; var site_a="http://www.yandex.ru/"; var site_b="http://www.mail.ru/"; var site_c="http://www.rambler.ru/"; if (clf==site_a|clf==site_b|clf==site_c) //сюда добавляем адреса на каких должно срабатывать { alert("сработало!"); //-----сюда нужный код //---------------------- } }
убираешь алерт и вставляешь в указанное место код той кнопки.
не понял что именно убрать - сам alert ? и код какой "той кнопки"
alert("сработало!");
//-----сюда нужный код//----------------------
Отсутствует
я выше шаблон написал
если решишь заняться то сделай хранение адресов в конфиге
лучше раздельное для сраниц и для доменов
вобщем так:
лкм - обычное действие то бишь подгонка размера
скм добавление текущего сайта или страницы в постоянный список
заюзай промпт чекбокс для выбора отдельную страницу или домен заносить в список
пкм можно добавить редактирование списка вручную через промпт
проверку сайтов ессно придется сделать в цикле.
Я уже видел кнопки в которых идет редактирование списка вручную через промпт и мне это кажется дико неудобным. Вот бы открыть этот список в каком нибудь блокноте или окне с возможность сохранения.
Надо наверно сделать кнопку - шаблон которая на разных сайтах или доменах будет запускать нужные коды или даже кнопку на подобие шаблона в которую можно будет легко добавлять свои коди.
Отсутствует
okkamas_knife
1 часто ли будет использоваться редактирование? основная его функция удалить сайт если не нужно постоянное срабатывание, а сайт добавил по-ошибке, так что разок потерпеть неудобство ради простоты кода это нормально.
Все должно быть удобно, вот.
Хранить всё в текстовом файле в профиле и для редактирования вызывать внешний редактор
Наверно выберу этот вариант, хотя тут могут быть проблемы, мда код может получитса сложный, но не будем искать легкие пути.
Есть несложная кнопка Notepad in Tab которая открывает блокнот как страницу, можно было редактировать в нем но я никак не могу придумать как туда автоматически при открывани ставить текст и потом оттуда получить обратно.
var link="data:text/html;base64,PFRFWFRBUkVBPjwvVEVYVEFSRUE+DQo8c3R5bGU+aHRtbCB7YmFja2dyb3VuZC1jb2xvcjpibGFjaztvdmVyZmxvdzpoaWRkZW47fXRleHRhcmVhIHtiYWNrZ3JvdW5kOiMzODM4Mzg7b3ZlcmZsb3cteTphdXRvO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7LW1vei1ib3JkZXItcmFkaXVzOjVweDtib3JkZXI6IDVweCBpbnNldCB3aGl0ZTtjb2xvcjogd2hpdGU7fTwvc3R5bGU+"; gBrowser.selectedTab = gBrowser.addTab(link);
Отредактировано bunda1 (30-06-2012 21:24:31)
Отсутствует
и при проверке обращаться к ней, а то прикинь если файлик хотябы до мегабайта вырастет - его даже блокнот с трудом скушает а уж искать в нём вообще мрак.
Да я не подумал об этом.
подумав я решил что эта фича вообще лишняя по крайней мере в этом варианте - то есть оставить только два режима включено-выключено и отдельный разовый запуск.(кстати прикинь как будет тормозить проверка хотябы с тысячью сайтов в списке)
Можно и так но тогда сайты над будет добавлять сайты заново, но можно сделать несколько вариантом и переключать в их настройках кнопки.
Зацени код. Открывает блокнот как страницу с общим количество открытых вкладок плюс заголовок и урл каждой вкладки. :
var tabs = getBrowser().mTabContainer.childNodes; var tabsinfo='\n'; for (var i = 0; i < tabs.length ; i++){ tmpURL = getBrowser().getBrowserAtIndex(i).currentURI.spec cnt=i+1; tabsinfo=tabsinfo+cnt+':'+tabs[i].label+'\n'+tmpURL+'\n———————————————————————————————\n'; } Components.classes["@mozilla.org/widget/clipboardhelper;1"] .getService(Components.interfaces.nsIClipboardHelper) .copyString('количество вкладок='+tabs.length+tabsinfo); var link="data:text/html;base64,PFRFWFRBUkVBPjwvVEVYVEFSRUE+DQo8c3R5bGU+aHRtbCB7YmFja2dyb3VuZC1jb2xvcjpibGFjaztvdmVyZmxvdzpoaWRkZW47fXRleHRhcmVhIHtiYWNrZ3JvdW5kOiMzODM4Mzg7b3ZlcmZsb3cteTphdXRvO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7LW1vei1ib3JkZXItcmFkaXVzOjVweDtib3JkZXI6IDVweCBpbnNldCB3aGl0ZTtjb2xvcjogd2hpdGU7fTwvc3R5bGU+"; loadURI(link); gBrowser.addEventListener("pageshow", function(event){ gBrowser.removeEventListener("pageshow", arguments.callee, true); var p = content.document.getElementsByTagName("textarea"); for (var i = 0; i < p.length; i++) { p[i].focus(); goDoCommand('cmd_paste'); } }, true);
Отредактировано bunda1 (30-06-2012 23:20:57)
Отсутствует
С подгонкой страниц под размер монитора она во многих случаях справляется вполне замечательно, но хотелось чтобы на сайтах адреса которых будут занесены в её список она делала это автоматически , то есть например когда читаешь многостраничный форум, на каждой новой странице приходится жать на кнопку вновь
вот расширение, которое подгоняло все размеры сайтов, ImageFit, у некоторых оно работает до сих пор, кстати Tiger.711 включил его в свой знаменитый уже список, думаю оно должно стать первой ласточкой в благородном деле перевода расширений на рельсы CB
Отредактировано LongLogin (01-07-2012 00:31:36)
Отсутствует