Как добавить в контекстное меню "Копировать текст как BBCode"?
В поиске, только нашел "Копировать ссылку как BBCode"
Отредактировано amid525 (29-07-2015 14:37:24)
Отсутствует
Как добавить в контекстное меню "Копировать текст как BBCode"?
В поиске, только нашел "Копировать ссылку как BBCode"
В меню не видел, а вот просто кнопка есть Quote+ Bookmarklets and buttons for Firefox and old Opera
Отсутствует
amid525
В инициализацию:
// ПКМ по пункту контекстного меню "Копировать" - копирует выделенный текст как цитату document.getElementById('context-copy').setAttribute("oncontextmenu", "event.preventDefault(); event.stopPropagation(); document.getElementById('" + this.id + "').copyTextAsBBcode(); hidePopup();"); // Получить выделенный текст из страницы или из буфера обмена, если нет текста получить 'false' .......... function getSelect() { // выделенный текст из страницы .... var selection = document.commandDispatcher.focusedWindow.getSelection().toString(); // выделенный текст из текстового поля .... if ( selection == '' ) { var theBox = document.commandDispatcher.focusedElement; if ( theBox && (theBox.type == "text" || theBox.type == "textarea") ) { var startPos = theBox.selectionStart; var endPos = theBox.selectionEnd; var selection = theBox.value.substring(startPos, endPos); } }; // убираем пробелы с обоих концов текста .... if ( selection !== '' ) var selection = selection.toString().replace(/^\s+|\s+$/g,""); return ( selection == '') ? false : selection; }; this.copyTextAsBBcode = function() { gClipboard.write('[quote]'+ getSelect() +'[/quote]') };
(частично потырено у bunda1, за что ему спасибо )
Отредактировано turbot (29-07-2015 16:48:16)
Отсутствует
turbot
ни чего не появилось в конт меню
Добавлено 29-07-2015 17:42:33
появилось в
В меню не видел, а вот просто кнопка есть Quote+ Bookmarklets and buttons for Firefox and old Opera
Это не то. Тут просто цитирование.
Отредактировано amid525 (29-07-2015 17:42:55)
Отсутствует
ни чего не появилось в конт меню
ПКМ по пункту контекстного меню "Копировать" - копирует выделенный текст как цитату
Добавлено 29-07-2015 17:55:02
Это не то. Тут просто цитирование.
А как вам еще надо текст копировать? Как ссылку? Как картинку?
Отредактировано turbot (29-07-2015 17:55:02)
Отсутствует
amid525
Ссылку на что? На конкретное место на странице, с которого копировали? Не выйдет. Универсально, по крайней мере. На страницу, пожалуйста:
// ПКМ по пункту контекстного меню "Копировать" - копирует выделенный текст как ссылку на текущую страницу document.getElementById('context-copy').setAttribute("oncontextmenu", "event.preventDefault(); event.stopPropagation(); document.getElementById('" + this.id + "').copyTextAsBBcode(); hidePopup();"); // Получить выделенный текст из страницы или из буфера обмена, если нет текста получить 'false' .......... function getSelect() { // выделенный текст из страницы .... var selection = document.commandDispatcher.focusedWindow.getSelection().toString(); // выделенный текст из текстового поля .... if ( selection == '' ) { var theBox = document.commandDispatcher.focusedElement; if ( theBox && (theBox.type == "text" || theBox.type == "textarea") ) { var startPos = theBox.selectionStart; var endPos = theBox.selectionEnd; var selection = theBox.value.substring(startPos, endPos); } }; // убираем пробелы с обоих концов текста .... if ( selection !== '' ) var selection = selection.toString().replace(/^\s+|\s+$/g,""); return ( selection == '') ? false : selection; }; this.copyTextAsBBcode = function() { gClipboard.write('[url=' + content.location.href + ']'+ getSelect() + '[/url]') };
Отсутствует
amid525
Вставлять в инициализацию отдельной кнопки, не к другим:
// ЛКМ по пункту контекстного меню "Copy Text as BBCode Link/Quote" - копирует выделенный текст как ссылку на текущую страницу // ПКМ по пункту контекстного меню "Copy Text as BBCode Link/Quote" - копирует выделенный текст как цитату if ( document.getElementById("context-copy-bb") ) return; var menuItem = document.createElement("menuitem"); menuItem.id = "context-copy-bb"; menuItem.setAttribute("label", "Copy Text as BBCode Link/Quote"); menuItem.setAttribute("class", "menuitem-iconic"); menuItem.setAttribute("image", "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDoAABSCAABFVgAADqXAAAXb9daH5AAAABkSURBVHjaYvj//z8DNTAD1Q2qrGk4XFnT8B8LLq6saWDAhbEZhM2QBihdQqlBDEiGUWRQaWVNQxoUU+wivGFHikF4w45Sg+BhR6lBcExTgw5TyyBceBgbdBiPQUdoV4xQigEDAOLOHqeJF4QiAAAAAElFTkSuQmCC"); menuItem.setAttribute("oncommand", "document.getElementById('" + this.id + "').copyTextAsBBcodeUrl();"); menuItem.setAttribute("oncontextmenu", "event.preventDefault(); event.stopPropagation(); document.getElementById('" + this.id + "').copyTextAsBBcodeQuote(); hidePopup();"); document.getElementById("context-copy").parentNode.insertBefore( menuItem, document.getElementById("context-copy") ); document.getElementById("contentAreaContextMenu").addEventListener("popupshowing", function() { menuItem.hidden = !gContextMenu.isTextSelected; }, false); const alertsService = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService); // Получить выделенный текст из страницы или из буфера обмена, если нет текста получить 'false' .......... function getSelect() { // выделенный текст из страницы .... var selection = document.commandDispatcher.focusedWindow.getSelection().toString(); // выделенный текст из текстового поля .... if ( selection == '' ) { var theBox = document.commandDispatcher.focusedElement; if ( theBox && (theBox.type == "text" || theBox.type == "textarea") ) { var startPos = theBox.selectionStart; var endPos = theBox.selectionEnd; var selection = theBox.value.substring(startPos, endPos); } }; // убираем пробелы с обоих концов текста .... if ( selection !== '' ) var selection = selection.toString().replace(/^\s+|\s+$/g,""); return ( selection == '') ? false : selection; }; this.copyTextAsBBcodeQuote = function() { gClipboard.write('[quote]'+ getSelect() +'[/quote]'); var notification = 'Выделенный текст скопирован как цитата'; alertsService.showAlertNotification(menuItem.image, menuItem.label, notification, false, "", null, "") }; this.copyTextAsBBcodeUrl = function() { gClipboard.write('[url=' + content.location.href + ']'+ getSelect() + '[/url]'); var notification = 'Выделенный текст скопирован как ссылка'; alertsService.showAlertNotification(menuItem.image, menuItem.label, notification, false, "", null, "") };
UPD: чуть поправил
Отредактировано turbot (29-07-2015 19:04:21)
Отсутствует
Сделайте пожалуйста кнопку "Озвучивание слов и фраз на английском".
Выделяем слово или фразу - нажимаем кнопку - и слышим озвучку голосом.
ps
пока работает так )) - переходим сюда http://translate.google.com/#auto/ru/firefox, и нажимаем значок динамика.
Отредактировано firepox (05-08-2015 15:00:18)
Отсутствует
firepox
Поставьте S3.Google Translator (тестовую, по ссылке из этого поста), там это есть:
Отсутствует
Привет всем.
Вопрос к bunda1, как автору кнопки Autocopy+3,
но может еще кто поможет.
Хотелось бы добавить в кнопке функцию "копировать БЕЗ форматирования".
А то я ради этого целое расширение установил (которое с чем-то конфликтует),
но осталось подозрение, что это в кнопке можно реализовать.
Отсутствует
Ultima2m
А вставить без форматирования не устроит?
Добавлено 11-08-2015 16:24:35
Кстати, если кто подскажет насчет
Но! Если текстовое поле не поддерживает richtext (вставку текста с форматированием), то пункт хоть и будет активен, но ничего в это поле не вставит. Как это обойти - не знаю.
- был бы очень благодарен. (В смысле, чтобы в этом случае срабатывало просто "вставить")
Отредактировано turbot (11-08-2015 16:24:35)
Отсутствует
Хотелось бы добавить в кнопке функцию "копировать БЕЗ форматирования".
А то я ради этого целое расширение установил (которое с чем-то конфликтует),
но осталось подозрение, что это в кнопке можно реализовать.
Кажется была такая старая кнопка на http://www.smileyfaze.tk/CustomButtons2%20Database.htm или http://odyseus.github.io/CustomButtons/ … abase.html, поискал но не нашел.
Отсутствует
Такая проблема. Закинул это в инициализацию, раньше работало. Убирает подсказки при наведении на какое либо меню (ну там, наводишь на крестик - закрыть вкладку показывает). Как сделать так, что бы оно заработало вновь.
Отсутствует
LittleMontana
в конце не хватает.
Либо
в начале - лишняя.
Отредактировано turbot (15-08-2015 18:33:33)
Отсутствует
еще раз спасибо!)
Отсутствует
есть способ с помощью кнопок разрешить копирование текста на этом сайте?
Отсутствует
есть способ с помощью кнопок разрешить копирование текста на этом сайте?
Может стиль подойдёт? Тогда вот http://forum.ru-board.com/topic.cgi?for … rt=4900#13
Отредактировано voqabuhe (19-08-2015 19:17:51)
Отсутствует