Inko7
что показывает Консоль ошибок, если СКМ на кнопке?
какие у тебя расширение установлены?
скопируй где то текст, без выделение + СКМ на кнопке, что будет?
Отредактировано bunda1 (04-11-2011 22:09:17)
Отсутствует
bunda1
попробовал на чистом профиле > тот же эффект! При этом в консоли ничего не появляется.
Когда текст в буфере и нет выделения на странице, срабатывание кнопки всегда нормальное!
А с выделенным текстом срабатывает только так, как писал выше:
выделить текст > клик СКМ по кнопке > выскакивает пустой алерт и ничего не автовыделяется > клик по странице чтобы снять выделение с текста > снова клик СКМ по кнопке > выскакивает алерт с ранее выделенным текстом и срабатывает автовыделение!!!
Отсутствует
inko7
Попробуй в кнопке заменить на этот код:
//настройка функций кликов мыши(Mouse Click settings)................................................... this.onclick = function(event) { if(event.button == 0) { // Действие при клике ЛКМ switchHighlight(event); } else if(event.button == 1) { // Действие при клике СКМ HighlightAdd(event); } }; //Объявляем 'clipboard','storage' ................................................................. var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"]. getService(Components.interfaces.nsIClipboardHelper); storage = globalStorage[document.domain] //подсказка............................................................................. this.showHighlightAdd = function() { //getting prefs Unicode value var HighlightValue = prefs.getComplexValue("Auto.Highlight.value",Components.interfaces.nsISupportsString).data; var text = "L = Bключить/выключить\nM = Добавить текст \nR = CB меню "; var L_text = "Выделяем: "; this.tooltipText = this.label +"\n" + text +"\n\n"+ L_text + HighlightValue; } this.setAttribute("onmouseover", "this.showHighlightAdd()"); //Стоп, при открытии настройки панелей.................................................... this.onDestroy = function(reason) { //.... if (reason == "constructor") storage['run'] = 'stop' if (reason == "destructor") delete storage['run'] } //проверить наличие строк в about:config и создать если не существует(Add preferences)........................................ var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService); var f; try{ f = prefs.getBoolPref("Auto.Highlight"); } catch(e){ prefs.setBoolPref("Auto.Highlight", true); prefs.setCharPref("ui.textHighlightBackground", "#ef0fff");//http://coloria.net/bonus/colornames.htm clipboard.copyString("пожалуйста добавьте текст"); HighlightAdd(event); } //Авто выделение, добавить текст.............................. function HighlightAdd(event){ // Get the root branch var prefs = Components.classes["@mozilla.org/preferences-service;1"] .getService(Components.interfaces.nsIPrefBranch); //setting Unicode value var str = Components.classes["@mozilla.org/supports-string;1"] .createInstance(Components.interfaces.nsISupportsString); // var text = document.commandDispatcher.focusedWindow.getSelection(); if (text != '') { str.data = text; } else { //read from Clipboard str.data = readFromClipboard(); }; //setting prefs Unicode value prefs.setComplexValue("Auto.Highlight.value", Components.interfaces.nsISupportsString, str); //getting prefs Unicode value var Avalue = prefs.getComplexValue("Auto.Highlight.value",Components.interfaces.nsISupportsString).data //Sliding alert if (Avalue !== "пожалуйста добавьте текст") { custombuttons.alertSlide("Авто выделение", Avalue); } //run auto Highlight Highlight(event); }; //Авто выделение, включить............ function switchHighlight(event){ // toggle preference var s = "Auto.Highlight"; custombuttons.setPrefs(s, !custombuttons.getPrefs(s)); //toggle image ToggleImage(event); //run auto Highlight Highlight(event); }; //Изменить иконку кнопки............ var button = this; function ToggleImage(event){ // toggle button image if (custombuttonsUtils. getPrefs ("Auto.Highlight", true)) { button.image="data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD+//4B////APX69AV9vWaPVJsR9GabDPiQrDGn6OzRG////wD+/v0B////AP///gL///0B////AP///wD///8A////AP3+/gP///8ActGnhRyqVP83q0r8PqMu/kqZDf9yoh7Wu8t8YNjan07m4bM9+ffqCf///wD///4B////AP///wD8/v8C//7/AOL5/A4d1NrUFc/G/yHEov0qt3b/NKtM/UGeHv9WlAD/eJcB/peZAP+nphzH5+bAIP///wD+/v8A/fz/A/3+/wH///8A5/b+CyG8/c4Jz/z/ENfm/RrLuf8nu4b/M61S/UGgJvtbnBH8fqAQ/IKXAP+lrjax/v76AP7+/gH///8A7fD9CNni/Bb///8Ac7/4dQCn9/8P1f38ENbh/xzIsf8ouoD/NKtL/0GeHf9enA79dJ0M/4yiGOrx8d0c/f3/AJaT7105O+TOHTjn5GuP8n7u9v4AOK/3ugW/+/8N2vX9FdDN/yDDoP8rtXD/N6c//kqdGPpcnBD/dqIZ3/L05BCVht5rLhXE/zMj0f0nKuL/EkHp7+Dm/Bq64/wyBKz4/w/W/fwP1+X/Gsq4/ya+kPwwsWH+M58o/jSSAP+exXNr////AFkwrepXMrT8SjPG9icg2v8xRunM8fX+BfL5/gcdpPbOBMH8/w/b9vwX0dH+FcKk/yS3evFZum2rpdOaUPj79gD///8BZy6R8lsqn/8/Hbb/NSfS6MPE+DDj7PwI8vP9ALHe/DQXs/nWAs/9/wDV5v9C1Mmwye/jI////wD///8B////AP7+/gG/oclQgVSpuIhuy4/OyfIheHbpgx815+4vZ+7C2uf8Fuz5/we+8P83y/f8Jvb9/QL///8A8vv4CZPUpGO837Y5////AP///wD6+f0D////AIVy1IsgEsz/Lini+Qow5/+Gq/Vq////AM/t/Ruo6/4+6/z9C////wB817lzE6dQ/zGeJfOs05lI/Pv9Bf///wDXy+knTCOu7UYvxf89KtH4Fhrh/4yb9GTB3/sjCJH07QC9+v854Pio9///AFHOsrMktnX/NKtO/0KoPsz9/P0D////AMey2ElWJaL/UzG4+k0vv/4sGs/5vLn1Mkl68aoLcvD/G6j4+QDH+v+29f8xY9zUkA/Eo/8swpH3JL6M/P38/gL///8A08DcNF8kkPlgNar9Sh2m/3texp/i4PsPKTDk7hxP7P8eefD7Apb1/47Z/E2x8vw2AMrv/wXN5/8O0Ova////AP///wH8+/wAoHe0iWkukfN+U66v8+31C9PL7iA3H8n6KSzi/yNF6/sMVe3/rc35PP///wB/zv1qM7L7u53e/j7///8A////AP///wD7+fsB6NzqD/n2+gT///8A7uf0EV80rONFKcD/LCTU/zxC47/u8P4D////Af7+/gH//f4A///+AP///wD///8A//7/AP79/gL///8A/v7/Av38/gT///8AsZHEZmAplv5gOrPQzMbwKf///wD9/f4C/f//A/7//wL9/v8CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; } else { button.image="data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAD///8A/v7+AP39/QH9/f0B/f39Af39/QH///8AmJiYKQAAALEDAwPqAAAA1gAAAGm7u7sA////Afv7+wD///8A////AP39/QH9/f0D////AP///wD7+/sB////AKKiogoAAADJAAAA/wAAAP0BAQH+AAAA/wsLC3HDw8MA////Bfb29gP+/v4A////Aefn5wDT09MJ1tbWCdTU1AT///8AXFxcSwAAAPsEBAT/AAAA/gAAAPwFBQX/AAAA63Nzczvu7u4A/Pz8Avz8/AHr6+sJMjIyZgAAAL8CAgLCAAAApsbGxhhoaGhLAAAA/gUFBf8AAAD+AAAA/wAAAP0DAwP/AAAA6hMTE5eHh4cr3d3dACsrK4gAAAD/AwMD/gMDA/wAAAD/Hh4emy0tLQwAAADwAQEB/wAAAP4AAAD/AAAA/wAAAP8BAQH9AwMD/wAAAOcrKys5AwMD7gYGBv4AAAD7BAQE/QAAAP9KSkp5////ABUVFcIAAAD/AQEB/QAAAP8AAAD/AAAA/wAAAP4BAQH6BwcH/wICAr8BAQGfAAAA/wEBAf8AAADrBQUFeMbGxgX///8AGhoawQAAAP8BAQH+AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD9BgYG66+vrwc1NTVCDw8PPgAAADUREREt0tLSF+7u7gAdHR27AAAA/wICAvsBAQH9AQEB/QEBAf0BAQH8AQEB+wICAv8BAQHC////AsHBwQAICAhzAAAA6AQEBP8AAADqWlpaL25ubj8AAAD4AgIC/wAAAP4AAAD/AAAA/wAAAP4CAgL/AAAA3VtbWznHx8cABgYGbwAAAP8BAQH+AAAA+AUFBf8AAAB18PDwAIyMjDwYGBiuGRkZwxgYGJQTExNzFhYWdQUFBWRgYGAb////ALS0tBwAAADXBQUF/wAAAPgFBQX/AAAA90tLSzunp6cApqamDaurqwP///8A////AP///wD///8A////AP///wD7+/sBtLS0LQAAAOwLCwv/CQkJ+wAAAP88PDyLkJCQDAICAqYAAADdAAAAkJCQkAP///8AW1tbLUlJSXFnZ2cR////AP7+/gHNzc0HDAwMpAAAAP8AAADuJycneRMTEw8PDw/AAQEB/wsLC/8AAAD6cnJyPHR0dB4AAADiAAAA/yAgIJX///8A/v7+Av///wC7u7sPgoKCRYqKii3T09MACgoKaAAAAP8BAQH4AgIC/AAAAP8vLy9GKysreQAAAP8FBQX/BwcH3LS0tAj///8A/f39Af39/QH///8A////AOzs7AYDAwPEAAAA/wAAAPsCAgL/AAAA8mtrawlMTEygAAAA/wgICP8AAADpampqGP///wD///8A/Pz8Afn5+QT+/v4B7e3tBAQEBMEAAAD/AQEB/QAAAP8TExNv////AFJSUosAAAD/AwMD/wEBAauurq4A////Av///wD///8A/v7+AP///wLv7+8AAwMDSwAAAOADAwPZAAAAZZOTkwP///8AT09PIQAAALYAAAC3oaGhIf///wD9/f0BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; } }; //Стоп, при открытии настройки панелей(stop, if onDestroy) // запускаем функцию if (storage['run'] !== 'stop'){ToggleImage(event); }; //Автоматически выделить заранее введенные слова (auto Highlight words permanent)...................... function Highlight(event) { //hide Highlight gFindBar._highlightDoc(false); //auto Highlight if (custombuttonsUtils. getPrefs ("Auto.Highlight", true)) { //getting prefs Unicode value var value = prefs.getComplexValue("Auto.Highlight.value", Components.interfaces.nsISupportsString).data; //Highlight var word = [value]; gFindBar._highlightDoc(true, word); } }; //Стоп, при открытии настройки панелей(stop, if onDestroy) // запускаем функцию if (storage['run'] !== 'stop') (function () { // добавляем обработчики gBrowser.tabContainer.addEventListener("TabSelect", Highlight, false); document.addEventListener( "DOMContentLoaded", Highlight, false); })();
Отредактировано bunda1 (05-11-2011 13:11:58)
Отсутствует
bunda1
Последний штрих:
можешь повесить дополнительно на Ctrl (или ALT, или SHIFT) + ЛКМ > сбросить запомненный текст ? Тоже будет не лишним...
Ctrl + ПКМ > сбросить запомненный текст
//настройка функций кликов мыши(Mouse Click settings)................................................... this.onclick = function(event) { if(event.button == 0) { // Действие при клике ЛКМ switchHighlight(event); } if(event.button == 2 && event.ctrlKey && !event.altKey && !event.shiftKey) { // Действие при клике ctrl+ПКМ // Блокируем контекстное меню при клике ПКМ без модификаторов event.preventDefault(); event.stopPropagation(); // clear preference clipboard.copyString("??????"); HighlightAdd(event); }; if(event.button == 1) { // Действие при клике СКМ HighlightAdd(event); } }; //Объявляем 'clipboard','storage' ................................................................. var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"]. getService(Components.interfaces.nsIClipboardHelper); storage = globalStorage[document.domain] //подсказка............................................................................. this.showHighlightAdd = function() { //getting prefs Unicode value var HighlightValue = prefs.getComplexValue("Auto.Highlight.value",Components.interfaces.nsISupportsString).data; var text = "L = Bключить/выключить\nM = Добавить текст \nR = CB меню "; var L_text = "Выделяем: "; this.tooltipText = this.label +"\n" + text +"\n\n"+ L_text + HighlightValue; } this.setAttribute("onmouseover", "this.showHighlightAdd()"); //Стоп, при открытии настройки панелей.................................................... this.onDestroy = function(reason) { //.... if (reason == "constructor") storage['run'] = 'stop' if (reason == "destructor") delete storage['run'] } //проверить наличие строк в about:config и создать если не существует(Add preferences)........................................ var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService); var f; try{ f = prefs.getBoolPref("Auto.Highlight"); } catch(e){ prefs.setBoolPref("Auto.Highlight", true); prefs.setCharPref("ui.textHighlightBackground", "#ef0fff");//http://coloria.net/bonus/colornames.htm clipboard.copyString("пожалуйста добавьте текст"); HighlightAdd(event); } //Авто выделение, добавить текст.............................. function HighlightAdd(event){ // Get the root branch var prefs = Components.classes["@mozilla.org/preferences-service;1"] .getService(Components.interfaces.nsIPrefBranch); //setting Unicode value var str = Components.classes["@mozilla.org/supports-string;1"] .createInstance(Components.interfaces.nsISupportsString); // var text = document.commandDispatcher.focusedWindow.getSelection(); if (text != '') { str.data = text; } else { //read from Clipboard str.data = readFromClipboard(); }; //setting prefs Unicode value prefs.setComplexValue("Auto.Highlight.value", Components.interfaces.nsISupportsString, str); //getting prefs Unicode value var Avalue = prefs.getComplexValue("Auto.Highlight.value",Components.interfaces.nsISupportsString).data //Sliding alert if (Avalue !== "пожалуйста добавьте текст") { custombuttons.alertSlide("Авто выделение", Avalue); } //run auto Highlight Highlight(event); }; //Авто выделение, включить............ function switchHighlight(event){ // toggle preference var s = "Auto.Highlight"; custombuttons.setPrefs(s, !custombuttons.getPrefs(s)); //toggle image ToggleImage(event); //run auto Highlight Highlight(event); }; //Изменить иконку кнопки............ var button = this; function ToggleImage(event){ // toggle button image if (custombuttonsUtils. getPrefs ("Auto.Highlight", true)) { button.image="data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD+//4B////APX69AV9vWaPVJsR9GabDPiQrDGn6OzRG////wD+/v0B////AP///gL///0B////AP///wD///8A////AP3+/gP///8ActGnhRyqVP83q0r8PqMu/kqZDf9yoh7Wu8t8YNjan07m4bM9+ffqCf///wD///4B////AP///wD8/v8C//7/AOL5/A4d1NrUFc/G/yHEov0qt3b/NKtM/UGeHv9WlAD/eJcB/peZAP+nphzH5+bAIP///wD+/v8A/fz/A/3+/wH///8A5/b+CyG8/c4Jz/z/ENfm/RrLuf8nu4b/M61S/UGgJvtbnBH8fqAQ/IKXAP+lrjax/v76AP7+/gH///8A7fD9CNni/Bb///8Ac7/4dQCn9/8P1f38ENbh/xzIsf8ouoD/NKtL/0GeHf9enA79dJ0M/4yiGOrx8d0c/f3/AJaT7105O+TOHTjn5GuP8n7u9v4AOK/3ugW/+/8N2vX9FdDN/yDDoP8rtXD/N6c//kqdGPpcnBD/dqIZ3/L05BCVht5rLhXE/zMj0f0nKuL/EkHp7+Dm/Bq64/wyBKz4/w/W/fwP1+X/Gsq4/ya+kPwwsWH+M58o/jSSAP+exXNr////AFkwrepXMrT8SjPG9icg2v8xRunM8fX+BfL5/gcdpPbOBMH8/w/b9vwX0dH+FcKk/yS3evFZum2rpdOaUPj79gD///8BZy6R8lsqn/8/Hbb/NSfS6MPE+DDj7PwI8vP9ALHe/DQXs/nWAs/9/wDV5v9C1Mmwye/jI////wD///8B////AP7+/gG/oclQgVSpuIhuy4/OyfIheHbpgx815+4vZ+7C2uf8Fuz5/we+8P83y/f8Jvb9/QL///8A8vv4CZPUpGO837Y5////AP///wD6+f0D////AIVy1IsgEsz/Lini+Qow5/+Gq/Vq////AM/t/Ruo6/4+6/z9C////wB817lzE6dQ/zGeJfOs05lI/Pv9Bf///wDXy+knTCOu7UYvxf89KtH4Fhrh/4yb9GTB3/sjCJH07QC9+v854Pio9///AFHOsrMktnX/NKtO/0KoPsz9/P0D////AMey2ElWJaL/UzG4+k0vv/4sGs/5vLn1Mkl68aoLcvD/G6j4+QDH+v+29f8xY9zUkA/Eo/8swpH3JL6M/P38/gL///8A08DcNF8kkPlgNar9Sh2m/3texp/i4PsPKTDk7hxP7P8eefD7Apb1/47Z/E2x8vw2AMrv/wXN5/8O0Ova////AP///wH8+/wAoHe0iWkukfN+U66v8+31C9PL7iA3H8n6KSzi/yNF6/sMVe3/rc35PP///wB/zv1qM7L7u53e/j7///8A////AP///wD7+fsB6NzqD/n2+gT///8A7uf0EV80rONFKcD/LCTU/zxC47/u8P4D////Af7+/gH//f4A///+AP///wD///8A//7/AP79/gL///8A/v7/Av38/gT///8AsZHEZmAplv5gOrPQzMbwKf///wD9/f4C/f//A/7//wL9/v8CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; } else { button.image="data:image/x-icon;base64,AAABAAEAEREAAAEAIADwBAAAFgAAACgAAAARAAAAIgAAAAEAIAAAAAAAyAQAAAAAAAAAAAAAAAAAAAAAAAD///8A/v7+AP39/QH9/f0B/f39Af39/QH///8AmJiYKQAAALEDAwPqAAAA1gAAAGm7u7sA////Afv7+wD///8A////AP39/QH9/f0D////AP///wD7+/sB////AKKiogoAAADJAAAA/wAAAP0BAQH+AAAA/wsLC3HDw8MA////Bfb29gP+/v4A////Aefn5wDT09MJ1tbWCdTU1AT///8AXFxcSwAAAPsEBAT/AAAA/gAAAPwFBQX/AAAA63Nzczvu7u4A/Pz8Avz8/AHr6+sJMjIyZgAAAL8CAgLCAAAApsbGxhhoaGhLAAAA/gUFBf8AAAD+AAAA/wAAAP0DAwP/AAAA6hMTE5eHh4cr3d3dACsrK4gAAAD/AwMD/gMDA/wAAAD/Hh4emy0tLQwAAADwAQEB/wAAAP4AAAD/AAAA/wAAAP8BAQH9AwMD/wAAAOcrKys5AwMD7gYGBv4AAAD7BAQE/QAAAP9KSkp5////ABUVFcIAAAD/AQEB/QAAAP8AAAD/AAAA/wAAAP4BAQH6BwcH/wICAr8BAQGfAAAA/wEBAf8AAADrBQUFeMbGxgX///8AGhoawQAAAP8BAQH+AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD9BgYG66+vrwc1NTVCDw8PPgAAADUREREt0tLSF+7u7gAdHR27AAAA/wICAvsBAQH9AQEB/QEBAf0BAQH8AQEB+wICAv8BAQHC////AsHBwQAICAhzAAAA6AQEBP8AAADqWlpaL25ubj8AAAD4AgIC/wAAAP4AAAD/AAAA/wAAAP4CAgL/AAAA3VtbWznHx8cABgYGbwAAAP8BAQH+AAAA+AUFBf8AAAB18PDwAIyMjDwYGBiuGRkZwxgYGJQTExNzFhYWdQUFBWRgYGAb////ALS0tBwAAADXBQUF/wAAAPgFBQX/AAAA90tLSzunp6cApqamDaurqwP///8A////AP///wD///8A////AP///wD7+/sBtLS0LQAAAOwLCwv/CQkJ+wAAAP88PDyLkJCQDAICAqYAAADdAAAAkJCQkAP///8AW1tbLUlJSXFnZ2cR////AP7+/gHNzc0HDAwMpAAAAP8AAADuJycneRMTEw8PDw/AAQEB/wsLC/8AAAD6cnJyPHR0dB4AAADiAAAA/yAgIJX///8A/v7+Av///wC7u7sPgoKCRYqKii3T09MACgoKaAAAAP8BAQH4AgIC/AAAAP8vLy9GKysreQAAAP8FBQX/BwcH3LS0tAj///8A/f39Af39/QH///8A////AOzs7AYDAwPEAAAA/wAAAPsCAgL/AAAA8mtrawlMTEygAAAA/wgICP8AAADpampqGP///wD///8A/Pz8Afn5+QT+/v4B7e3tBAQEBMEAAAD/AQEB/QAAAP8TExNv////AFJSUosAAAD/AwMD/wEBAauurq4A////Av///wD///8A/v7+AP///wLv7+8AAwMDSwAAAOADAwPZAAAAZZOTkwP///8AT09PIQAAALYAAAC3oaGhIf///wD9/f0BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; } }; //Стоп, при открытии настройки панелей(stop, if onDestroy) // запускаем функцию if (storage['run'] !== 'stop'){ToggleImage(event); }; //Автоматически выделить заранее введенные слова (auto Highlight words permanent)...................... function Highlight(event) { //hide Highlight gFindBar._highlightDoc(false); //auto Highlight if (custombuttonsUtils. getPrefs ("Auto.Highlight", true)) { //getting prefs Unicode value var value = prefs.getComplexValue("Auto.Highlight.value", Components.interfaces.nsISupportsString).data; //Highlight var word = [value]; gFindBar._highlightDoc(true, word); } }; //Стоп, при открытии настройки панелей(stop, if onDestroy) // запускаем функцию if (storage['run'] !== 'stop') (function () { // добавляем обработчики gBrowser.tabContainer.addEventListener("TabSelect", Highlight, false); document.addEventListener( "DOMContentLoaded", Highlight, false); })();
Отредактировано bunda1 (05-11-2011 13:13:15)
Отсутствует
Search in Website+(Firefox)
http://forum.mozilla-russia.org/viewtop … 61#p515161
Исправил ошибки:
Не искала выделенный текст внутри фрейма.
Отсутствует
Поставил кнопку Popap-Toolbar!, скрытые тулбары она отображает, но они не активны. Что надо в коде кнопки менять или она должна работать без внесения изменений?
Отсутствует
Какую переменную нужно использовать чтобы узнать что в данный момент развернут и находится в фокусе мыши, а не свернут?
Отсутствует
Автовыделение(Firefox 3.6+)
http://forum.mozilla-russia.org/viewtop … 96#p527196
Добавил новые возможности:
Теперь, если открыт панель поиска по странице, кнопка будет автовыделять текст из поле вода панели поиска по странице.
Отсутствует
На Ru-board выкладывалась кнопка-панель BB Code автор tolikdryg, самая удачная кнопка такого плана, которые я видел ИМХО. На мой взгляд в ней не хватает кнопки, что бы из выделенного текста делать ссылку. Например, копируем адрес, набираем в окне для сообщений фразу, выделяем её, нажимаем на кнопку и имеем следующее:
Но без обрамления code естественно. Кто может доработайте плиз.
BBCode.zip BBCode.zip BBCode.zip
Отсутствует
bunda1
Исправьте в кнопке Zoom+2 проблему ПКМ-настроить, плиз.
Исправил. Нашел другую ошибку, которую исправлю позже.
Добавил новые возможности:
левым кликом на масштаб отображения страницы =>сбросить масштаб.
Отсутствует
bunda1
что значит не активны.
Установил я кнопку, вытащил на панель, нажимаю на неё - появляется список тулбаров и "панель меню, панель закладок и тд" из "Вид"-"Панели инструментов". Но они не активны - если я в "Вид" нажимаю на тулбар, то он появляется, а в кнопке не нажимается, просто не реагирующий ни на что список.
Отсутствует
Munchauzen
Поставил кнопку Popap-Toolbar! и т.д.
Если поставили из Готовых кнопок, то там же было указано:
Позволяет отображать скрытую панель с кнопками (созданную пользователем) в компактном виде.
Название по-умолчанию для пользовательской панели: MButtons. Его можно изменить в коде кнопки (смотри внутри комментарий).
Т.е. нужно заранее создать свою панель с именем MButtons (если другое, то придется подправить код). Вот инструкцию писал одному пользователю форума:
Правой кнопкой мыши на панели вкладок или панели дополнений > Настроить > в открывшемся окне: Добавить панель > вводишь имя для панели MButtons > на появившуюся панель обязательно кидаешь любую кнопку, чтобы она закрепилась > Готово!
Моя кнопка сама ее скроет при запуске FF и будет выводить в компактном виде.
Вроде ничего сложного
Отсутствует
Zoom+2
Исправил ошибки:
Убрал лишний код
Добавил новые возможности:
Теперь если переключить на изменение масштаба только для текста на странице, текущий масштаб страницы в адресной строке или в на панели статуса отображается жирным шрифтом.
Savefrom2
Исправил ошибки:
Кнопка неработала в FF4+
Добавил новые возможности:
Теперь кнопка открывает SaveFrom.net в новой активной вкладке сразу справа от текущей вкладки.
Отредактировано bunda1 (11-11-2011 20:24:37)
Отсутствует
А как сделать, что бы масштаб сбрасывался на 130%?
zoomPanel.addEventListener("click", function(){document.getElementById("cmd_fullZoomReset").doCommand()}, true);
замени на
Отсутствует
замени на
Заменил, но так возникает баг. Увеличиваю масштаб, например 150%, сбрасываю ПКМ до 130%, перехожу на другую вкладку, возвращаюсь, масштаб становится первоначальный 150%. Т.е. после сброса ПКМ масштаб не запоминается. А когда со 100% такого нет.
Отсутствует
а кто подскажет код?
если закрываемый таб активный и крайний левый то тоже закрываем и ничего не делаем
если закрывамый таб активный и не крайний левый то закрыв его переключаемся на тот что слева.
// Focus to left or right tab when current tab is closed..................... (function(){ try { if(!gBrowser) return; }catch(e) { return; } const direction = 0;//0 for left, 1 for right..................... gBrowser.tabContainer.addEventListener("TabClose", tabCloseHandler, false); function tabCloseHandler(event) { var tab = event.target; if(tab != gBrowser.mCurrentTab) { return; } if(direction == 0) { if (tab.previousSibling) { gBrowser.mTabContainer.selectedIndex--; } } else { if (tab.nextSibling) { gBrowser.mTabContainer.selectedIndex++; } } } })();
Отсутствует