Страницы: 1
Автоматически открывать контекстное меню на странице( Firefox 24-48 )
Автор: bunda1
Версия: от 18.08.2016.
Описание: кнопка автоматически открывает контекстное меню на странице при выделении текста, ссылки и других элементов на странице.
Клики на кнопке:
ЛКМ => Выключить или включить авто открывание контекстное меню.
Код кнопки:
custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E%u0410%u0432%u0442%u043E%u043C%u0430%u0442%u0438%u0447%u0435%u0441%u043A%u0438%20%u043E%u0442%u043A%u0440%u044B%u0432%u0430%u0442%u044C%20%u043A%u043E%u043D%u0442%u0435%u043A%u0441%u0442%u043D%u043E%u0435%20%u043C%u0435%u043D%u044E%20%u043D%u0430%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u0435%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA/0lEQVQ4jZ3QzWrCQBQF4DyUwWA0xTBICAMSJNQKEpCABCHFKgNh/AlNcJiCD9DXmBc8XUh7F+3m9sLZ3MXH4XgAcP+4/8QaC2ssbr1B/96jazu05xYXfYFuNBrVQB0VDvsDAMD7BrhX72o45x6ANfbx9bzf+fwjAKptRcCtN2yg3JQEdG3HBop1QcD1dGVvsFquCNCNZjfIFzkB6qjYQDbPCNi/vrEBmUoC6l3N3iCZJQRU24rdQMSCgHJTsoFoEhFQrAs2EI5CApbPL+wNgmFAQL7Ikc0zyFRCphLJLIGIBUQsMH2aIppEGIdjhKMQwTCAP/DhD3wCAMA59698AWIK50BNkg5CAAAAAElFTkSuQmCC%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bthis._handleClick%20%3D%28%29%3D%3E%20cbu.setPrefs%28s%2C%20%21cbu.getPrefs%28s%29%29%3B%0A%0Avar%20s%20%3D%20%27CB.autoContextMenu%27%3B%0Acbu.isPref%28s%2C%20true%29%3B%0A%0AtoggleImage%28%29%3B%0Afunction%20toggleImage%28%29%20setTimeout%28%28%29%3D%3E%20self.checked%20%3D%20cbu.getPrefs%28s%29%2C%200%29%3B%20%20%20%20%20%20%20%20%20%20%20%0AgPrefService.addObserver%28s%2C%20toggleImage%2C%20false%29%3B%0AaddDestructor%28%28%29%3D%3E%20gPrefService.removeObserver%28s%2C%20toggleImage%29%20%29%3B%0A%0Afunction%20autoContextMenu%28e%29%20%7B%0A%20%20%20if%20%28%0A%20%20%20%20%20%20%20e.button%0A%20%20%20%20%20%20%20%7C%7C%20%21cbu.getPrefs%28s%29%0A%20%20%20%20%20%20%20%7C%7C%20gBrowser.currentURI.spec.startsWith%28%22about%3Astylish-edit%22%29%0A%20%20%20%20%20%20%20%7C%7C%20document.commandDispatcher.focusedWindow.getSelection%28%29.isCollapsed%0A%20%20%20%20%20%20%29%20return%3B%0A%20%20%20%20%0A%20%20%20var%20mouseEvent%20%3D%20document.createEvent%28%27MouseEvents%27%29%3B%0A%20%20%20mouseEvent.initMouseEvent%28%27contextmenu%27%2C%201%2C%201%2C%20window%2C%201%2C%20e.screenX%2C%20e.screenY%2C%20e.clientX%2C%20e.clientY%2C%200%2C%200%2C%200%2C%200%2C%202%2C%20null%29%3B%0A%20%20%20e.target.dispatchEvent%28mouseEvent%29%3B%0A%7D%3B%0AaddEventListener%28%27mouseup%27%2C%20autoContextMenu%2C%20false%2C%20gBrowser%29%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Код инициализации:
this._handleClick =()=> cbu.setPrefs(s, !cbu.getPrefs(s)); var s = 'CB.autoContextMenu'; cbu.isPref(s, true); toggleImage(); function toggleImage() setTimeout(()=> self.checked = cbu.getPrefs(s), 0); gPrefService.addObserver(s, toggleImage, false); addDestructor(()=> gPrefService.removeObserver(s, toggleImage) ); function autoContextMenu(e) { if ( e.button || !cbu.getPrefs(s) || gBrowser.currentURI.spec.startsWith("about:stylish-edit") || document.commandDispatcher.focusedWindow.getSelection().isCollapsed ) return; var mouseEvent = document.createEvent('MouseEvents'); mouseEvent.initMouseEvent('contextmenu', 1, 1, window, 1, e.screenX, e.screenY, e.clientX, e.clientY, 0, 0, 0, 0, 2, null); e.target.dispatchEvent(mouseEvent); }; addEventListener('mouseup', autoContextMenu, false, gBrowser);
Установка кнопки: устанавливаем расширение Сustom Buttons, копируем в адресную строку браузера код кнопки и жмём перейти в адресной строке. Откроется окно диалога добавления кнопки, нажимаем Ok, потом откроется сообщение о успешном создании кнопки, опять нажимаем Ok. Потом открываем настройку панелей инструментов, перетаскиваем кнопку в нужное место на панели и начинаем пользоваться кнопкой.
Отсутствует
Вот честно, никогда не понимал логики, ведь если человек выделяет что то на странице, значит с этим нужно что то дальше делать, то бишь вызывать контекстное меню по ПКМ, так почему бы не сразу по выделению? Лет 5 пользовался скриптом, недавно перешёл на твою кнопку, тем более что её можно быстро отключить когда вдруг необходимо. А когда привыкнешь к автомату, то без этого как то уже не уютно. Спасибо за кнопку!
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
Вот честно, никогда не понимал логики, ведь если человек выделяет что то на странице, значит с этим нужно что то дальше делать, то бишь вызывать контекстное меню по ПКМ, так почему бы не сразу по выделению?
Выделенное можно перетаскивать, копировать с клавиатуры или вовсе помечать так позицию, где читаешь.
Но это все так, дело вкуса, конечно.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
А кнопка у меня не работает. Проверял также и на чистом профиле.
44, Custom Buttons 0.0.5.8.1, пролеченный отсюда.
А на ком панели ты разместил кнопку?
Отсутствует
На 48 лисе кнопка не работает как надо, после перезагрузки браузера она опять не активна. На 45 нет таких проблем посмотрите пожалуйста.
Вроде исправил Автоматически открывать контекстное меню на странице
Отсутствует
Страницы: 1