>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Сustom Buttons http://forum.mozilla-russia.org/viewforum.php?id=34 >[CB]Двойным левым кликом добавить закладку в папку закладок. http://forum.mozilla-russia.org/viewtopic.php?id=55101 |
bunda1 > 29-05-2012 19:01:22 |
Двойным левым кликом добавить закладку в папку закладок( Firefox 24 + ) Выделить код Код:// Двойным левым кликом на папке закладок добавлять закладку в папку закладок, от 06.06.2019. ...................... addEventListener("dblclick", (e, targ = e.originalTarget)=> { if ( e.button || !targ._placesNode || !PlacesUtils.nodeIsFolder(targ._placesNode) ) return; var docTitle = gBrowser.selectedTab.label.substr(0, 50); var folderId = PlacesUtils.getConcreteItemId(targ._placesNode); var folderTitle = PlacesUtils.bookmarks.getItemTitle(folderId); var currentURI = Services.io.newURI(gBrowser.currentURI.spec, null, null); PlacesUtils.bookmarks.insertBookmark(folderId, currentURI, 0, docTitle); // всплывающая подсказка .... var favicon = gBrowser.selectedTab.image || "chrome://global/skin/icons/Portrait.png"; Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService) .showAlertNotification(favicon, "Добавил в папку " + folderTitle + ":", docTitle); setTimeout(()=> { document.getElementById("bookmarksMenuPopup").hidePopup() }, 50); }); Двойным правым кликом удалить папку закладок( Firefox 24 + ) Выделить код Код:// Двойным правым кликом удалить папку закладок, от 06.06.2019. ...................... addEventListener("dblclick", (e, targ = e.originalTarget)=> { if ( e.button != 2 || !targ._placesNode || !PlacesUtils.nodeIsFolder(targ._placesNode) ) return; var id = PlacesUtils.getConcreteItemId(targ._placesNode); setTimeout(()=> { document.getElementById("placesContext").hidePopup() }, 50); try { PlacesUtils.bookmarks.removeItem(id) } catch(e) {}; }); |
hydrolizer > 29-05-2012 19:52:23 |
bunda1 Выделить код Код:var folderTitle = PlacesUtils.bookmarks.getItemTitle(folderId); var docName = gBrowser.contentTitle ? gBrowser.contentTitle : gBrowser.contentDocument.location.href; custombuttons.alertSlide("Добавил в папку "+folderTitle+":", docName); (да, кстати - gBrowser.contentTitle может быть пустым) |
bunda1 > 29-05-2012 20:12:53 |
hydrolizer |
Stkvsky > 16-04-2016 16:57:22 |
bunda1, а можно пожалуйста добавить автоматическое закрытие вкладки после добавления ее в закладки? |
turbot > 16-04-2016 19:25:42 |
Stakhovsky |
Stkvsky > 16-04-2016 20:04:57 |
turbot, спасибо. |
Stkvsky > 18-04-2016 23:31:25 |
Изивините, а можно ли автоматически при добавлении закладки в папку, добавлять название папки в название самой закладки? Получатся папки в виде меток/тегов. Что бы потом можно было легко найти. |
turbot > 18-04-2016 23:54:22 |
Stakhovsky Выделить код Код:PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, '[' + folderTitle + ']' + docTitle ); У закладок в фф, кстати, теги есть: скрытый текст Может, лучше туда название папки добавлять? |
Stkvsky > 19-04-2016 00:06:20 |
turbot
Нет, спасибо, в название именно то что нужно, единственное что, если возможно, при добавлении закладки в под папку, что бы название основной папки (или всех вышестоящих папок) тоже добавлялось. |
turbot > 19-04-2016 00:16:24 |
Stakhovsky |
Stkvsky > 19-04-2016 00:31:32 |
turbot, ясно, ну ничего и так хорошо, а можно переместить название папки в конец названия закладки? |
voqabuhe > 19-04-2016 00:44:17 |
Stakhovsky пишет
Для поиска закладок, есть великолепный стиль от Dumby №583 |
turbot > 19-04-2016 01:13:30 |
Stakhovsky Выделить код Код:PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, docTitle + ' [' + folderTitle + ']' ); |
Stkvsky > 19-04-2016 01:25:34 |
turbot, странно, я так же пробовал переставить, не работало) теперь ок, спасибо. 19-04-2016 01:53:37 |
Stkvsky > 19-04-2016 10:46:48 |
bunda1, а вы не подскажите, возможно ли если я добавляю закладку в под-папку добавлять названия всех вышестоящих папок? |
bunda1 > 19-04-2016 11:46:47 |
Stakhovsky пишет
Куда добавлять названия всех вышестоящих папок? |
Stkvsky > 19-04-2016 12:21:54 |
bunda1, в название добавляемой вкладки. |
voqabuhe > 19-04-2016 12:41:09 |
Stakhovsky пишет
В смысле закладки, как я понял. |
Stkvsky > 19-04-2016 12:53:27 |
voqabuhe, да блин) закладки, спасибо, туплю например я добаляю закладку сайта "Магазин дверей" в под-папку "Двери" папки "Дом", возможно ли что бы в названии добавлялись названия папок: "Магазин дверей [Двери][Дом]" |
Stkvsky > 19-04-2016 21:48:22 |
А возможно сделать немного подругому, вот сейчас если я добавляю закладку в папку, к назнавию закладки добавляется название папки. А можно сделать тоже самое для создаваемой папки в папке? Что бы к создаваемой под-папке добавлялось название папки? |
turbot > 19-04-2016 21:51:59 |
Stakhovsky |
Stkvsky > 19-04-2016 22:15:57 |
turbot |
turbot > 19-04-2016 23:36:28 |
Stakhovsky |
Stkvsky > 20-04-2016 19:40:03 |
Ясно, видимо нельзя такое реализовать, ну ничего, спасибо за помощь. |
Stkvsky > 28-04-2016 00:54:45 |
Подскажите пожалуйста, а возможно ли добавлять выделенный на странице текст к названию закладки? |
turbot > 28-04-2016 01:22:41 |
Stakhovsky Выделить код Код:var selTxt = document.commandDispatcher.focusedWindow.getSelection().toString(); PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, docTitle + ' /' +selTxt + '/ [' + folderTitle + ']'); Заменить 10-ую на это. |
Stkvsky > 28-04-2016 02:01:38 |
Что то не работает, добавляются только две // |
turbot > 28-04-2016 02:04:23 |
Stakhovsky Выделить код Код:var getSel = document.commandDispatcher.focusedWindow.getSelection().toString(); var selTxt = ''; if (getSel) selTxt = ' :: ' + getSel + ' :: '; PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, docTitle + selTxt + '[' + folderTitle + ']'); 28-04-2016 02:05:30 |
Stkvsky > 28-04-2016 02:10:09 |
turbot Так же дожно быть?: скрытый текст Выделить код Код:// Двойным левым кликом на папке закладок добавлять закладку в папку закладок, от 09.05.2014. ................................ addEventListener("dblclick", function(e) { var target = e.originalTarget; if ( e.button !== 0 || !target._placesNode || !PlacesUtils.nodeIsFolder( target._placesNode ) ) return; var docTitle = ( content.document.title || gBrowser.mCurrentTab.label).substr(0, 50); var folderId = PlacesUtils.getConcreteItemId( target._placesNode ); var folderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var currentURI = Services.io.newURI( content.location, null, null ); var getSel = document.commandDispatcher.focusedWindow.getSelection().toString(); var selTxt = ''; if (getSel) selTxt = ' :: ' + getSel + ' :: '; PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, docTitle + selTxt + '[' + folderTitle + ']'); // всплывающая подсказка .... var favicon = ( !!gBrowser.mCurrentTab.image ) ? gBrowser.mCurrentTab.image : "chrome://global/skin/icons/Portrait.png"; Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService) .showAlertNotification( favicon, "Добавил в папку " + folderTitle + ":", docTitle, false, "", null, ""); }); |
turbot > 28-04-2016 02:13:29 |
Угу. Так. Браузер перезапустили после правки? У меня все работает. |
Stkvsky > 28-04-2016 02:18:53 |
Перезапустил, ничего, может дело в версии, у меня 34? Поищу, может конфликт какой-то. |
turbot > 28-04-2016 02:23:40 |
Stkvsky > 28-04-2016 02:26:34 |
Работает. 28-04-2016 02:45:21 Кнопка (там же где и все (в одной кнопке)), инициализация: скрытый текст Выделить код Код:// появление панели закладкок при клике в адрес строке ............... var PToolbar = document.getElementById("PersonalToolbar"); var UrlBar = document.getElementById("urlbar"); var NewTabButton = document.getElementById("new-tab-button"); var TabsNewTab = document.getAnonymousElementByAttribute(document.getElementById("tabbrowser-tabs"), "class", "tabs-newtab-button"); if (PToolbar.collapsed) { setToolbarVisibility(PToolbar, PToolbar.collapsed); } var ToolbarsVisibility = { ShowToolbar: function(event) { if (PToolbar.collapsed) { setToolbarVisibility(PToolbar, PToolbar.collapsed); } PToolbar.setAttribute("toolbarshow", true); gBrowser.addEventListener("mouseover", ToolbarsVisibility.ToolbarCollapse, false); }, ToolbarCollapse: function (event) { gBrowser.removeEventListener("mouseover", ToolbarsVisibility.ToolbarCollapse, false); PToolbar.removeAttribute("toolbarshow"); } }; addEventListener("mousedown", e=> {e.button ==0 && ToolbarsVisibility.ShowToolbar();}, false, UrlBar); addEventListener("mousedown", e=> {e.button ==0 && ToolbarsVisibility.ShowToolbar();}, false, NewTabButton); addEventListener("mousedown", e=> {e.button ==0 && ToolbarsVisibility.ShowToolbar();}, false, TabsNewTab); Стиль: скрытый текст Выделить код Код:@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); #main-window:not([customizing]) #PersonalToolbar { position: fixed !important; width: 100% !important; visibility: collapse !important; } #main-window:not([customizing]) #PersonalToolbar:-moz-lwtheme { border-color: rgba(0,0,0,.3) !important; -moz-binding: url("chrome://browser/content/customizableui/toolbar.xml#toolbar") !important; } #main-window:not([customizing]) #PersonalToolbar:-moz-lwtheme-brighttext { background-color: black !important; color: white !important; } #main-window:not([customizing]) #PersonalToolbar[toolbarshow], #main-window:not([customizing]) #PersonalToolbar:hover { visibility: visible !important; } |
turbot > 28-04-2016 02:54:25 |
Замените Выделить код Код:var getSel = document.commandDispatcher.focusedWindow.content.document.getSelection().toString(); |
Stkvsky > 28-04-2016 03:01:58 |
Спасибо большое. |
Stkvsky > 17-05-2016 10:34:58 |
turbot, можно вас попросить еще пожалуйста сделать добавление перед названием вкладки название домена? скрытый текст Выделить код Код:// Двойным левым кликом на папке закладок добавлять закладку в папку закладок + название родительской папки + выделенный на странице текст, от 09.05.2014. ................................ addEventListener("dblclick", function(e) { var target = e.originalTarget; if ( e.button !== 0 || !target._placesNode || !PlacesUtils.nodeIsFolder( target._placesNode ) ) return; var docTitle = ( content.document.title || gBrowser.mCurrentTab.label).substr(0, 50); var folderId = PlacesUtils.getConcreteItemId( target._placesNode ); var folderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var currentURI = Services.io.newURI( content.location, null, null ); var getSel = document.commandDispatcher.focusedWindow.getSelection().toString(); var selTxt = ''; if (getSel) selTxt = ' :: ' + getSel + ' :: '; PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, docTitle + selTxt + '[' + folderTitle + ']'); // всплывающая подсказка .... var favicon = ( !!gBrowser.mCurrentTab.image ) ? gBrowser.mCurrentTab.image : "chrome://global/skin/icons/Portrait.png"; Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService) .showAlertNotification( favicon, "Добавил в папку " + folderTitle + ":", docTitle, false, "", null, ""); }); |
turbot > 17-05-2016 18:34:57 |
Stakhovsky скрытый текст Выделить код Код:addEventListener("dblclick", function(e) { var target = e.originalTarget; if ( e.button !== 0 || !target._placesNode || !PlacesUtils.nodeIsFolder( target._placesNode ) ) return; var hostName = window.gBrowser.selectedBrowser.contentWindow.location.hostname; var docTitle = ( content.document.title || gBrowser.mCurrentTab.label).substr(0, 50); var folderId = PlacesUtils.getConcreteItemId( target._placesNode ); var folderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var parentFolderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var currentURI = Services.io.newURI( content.location, null, null ); var getSel = document.commandDispatcher.focusedWindow.content.document.getSelection().toString(); var selTxt = ''; if (getSel) selTxt = ' :: ' + getSel + ' :: '; PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, '[' + hostName + ']' + docTitle + selTxt + '[' + folderTitle + ']'); // всплывающая подсказка .... var favicon = ( !!gBrowser.mCurrentTab.image ) ? gBrowser.mCurrentTab.image : "chrome://global/skin/icons/Portrait.png"; Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService) .showAlertNotification( favicon, "Добавил в папку " + folderTitle + ":", docTitle, false, "", null, ""); }); 17-05-2016 18:45:33 |
Stkvsky > 18-05-2016 11:42:13 |
turbot
Когда пробовал на то время там нельзя было сохранять станицу как один файл. Создавались в папке сохранения подпапки на каждуй сохраняемую странци, это не понравилось, а перевод в формат мафф нельзя было делать пакетно, а только по одному сайту. Это собственно и не понравилось. Очень понравился в Скрап Буке полнотекстовый контекстный поиск, когда можно искать внутри всех сохраненных страниц, если бы можно было такое делать с мафф форматом перешел бы сраху, а так пока остановился на сохранении сайтов в мафф с помощью этого аддона save-file-to.
Ооо, супер, спасибо большое. Единственное если возможно пожалуйста, еще добавить вид текста, что бы лучше визуально отличать а то теперь много разного текста получается, если можно отображать домен жирным текстом, а добавляемый выделенный текст сделать подчеркнутым? |
turbot > 18-05-2016 11:55:57 |
Stakhovsky пишет
Нет, нельзя. Никак. |
Stkvsky > 18-05-2016 12:08:08 |
turbot |
difabor > 18-05-2016 12:16:18 |
turbot пишет
Можно имхо (в принципе) домен acceltext'ом отображать в правой части менюитема |
turbot > 19-05-2016 03:52:43 |
Stakhovsky difabor пишет
Вот, чертовы массивы и регулярки, как смог: Выделить код Код:addEventListener('popupshowing', (e)=> { Array.slice(document.querySelectorAll('menupopup[placespopup="true"]')).forEach((popup)=> { if (e.target !== popup) return; Array.slice(popup.querySelectorAll('menuitem.bookmark-item')).forEach((mItem)=> { var label = mItem.label; var host = label.match(/^(\[([\w.-]+)\])/); if (!host || mItem.hasAttribute('acceltext')) return; mItem.setAttribute('acceltext', label.split(/^(\[([\w.-]+)\])/)[1]); }) }) }, false, window); + стиль: |
Stkvsky > 19-05-2016 10:31:01 |
turbot |
turbot > 19-05-2016 19:23:38 |
Stakhovsky пишет
Выделить код Код:addEventListener('popupshowing', (e)=> { Array.slice(document.querySelectorAll('menupopup[placespopup="true"]')).forEach((popup)=> { if (e.target !== popup) return; Array.slice(popup.querySelectorAll('menuitem.bookmark-item')).forEach((mItem)=> { var label = mItem.label; if (!label.match(/^(\[([\w.-]+)\])/) || mItem.hasAttribute('acceltext')) return; var host = label.split(/^(\[([\w.-]+)\])/)[1]; mItem.setAttribute('acceltext', host); mItem.label = label.split(host)[1]; }) }) }, false, window); |
Stkvsky > 19-05-2016 20:37:20 |
turbot |
turbot > 21-05-2016 00:34:21 |
Stakhovsky Заменить оба предыдущих кода! Выделить код Код:addEventListener("dblclick", function(e) { var target = e.originalTarget; if ( e.button !== 0 || !target._placesNode || !PlacesUtils.nodeIsFolder( target._placesNode ) ) return; var hostName = '[hst]' + window.gBrowser.selectedBrowser.contentWindow.location.hostname + '[hst]'; var docTitle = ( content.document.title || gBrowser.mCurrentTab.label).substr(0, 50); var folderId = PlacesUtils.getConcreteItemId( target._placesNode ); var folderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var parentFolderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var currentURI = Services.io.newURI( content.location, null, null ); var getSel = document.commandDispatcher.focusedWindow.content.document.getSelection().toString(); var selTxt = ''; if (getSel) selTxt = '[txt] :: ' + getSel + ' :: [txt]'; PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, hostName + docTitle + selTxt + '[' + folderTitle + ']'); // всплывающая подсказка .... var favicon = ( !!gBrowser.mCurrentTab.image ) ? gBrowser.mCurrentTab.image : "chrome://global/skin/icons/Portrait.png"; Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService) .showAlertNotification( favicon, "Добавил в папку " + folderTitle + ":", docTitle, false, "", null, ""); }); addEventListener('popupshowing', e=> { var popup = e.originalTarget; if (!(popup.localName == 'menupopup' && popup.hasAttribute('placespopup'))) return; Array.slice(popup.querySelectorAll('menuitem.bookmark-item')).forEach(mItem=> { var label = mItem.label; if (!label.startsWith('[hst]')) return; var host = label.split(/\[hst\](.*)\[hst\]/)[1]; mItem.setAttribute('acceltext', host); if (label.indexOf('[txt]') !== -1) { label = encodeURIComponent(label); mItem.label = decodeURIComponent(label.replace(/%5Bhst%5D.*%5Bhst%5D|%5Btxt%5D.*%5Btxt%5D/g, '')); } else mItem.label = label.split(/\[hst\].*\[hst\]/)[1]; }) }, false, window); addEventListener('popupshowing', e=> { var bhTltp = e.originalTarget; var tipTitle = document.getElementById('bhtTitleText'); var tipTxt = tipTitle.textContent; if (tipTxt.startsWith('[hst]')) { var hLabel = document.createElement('label'); hLabel.id = 'bhtHst'; hLabel.textContent = tipTxt.split(/\[hst\](.*)\[hst\]/)[1]; bhTltp.appendChild(hLabel); if (tipTxt.indexOf('[txt]') !== -1) { tipTxt = encodeURIComponent(tipTxt); var tLabel = document.createElement('label'); tLabel.id = 'bhtTxt'; tLabel.textContent = decodeURIComponent(tipTxt.split(/%5Btxt%5D(.*)%5Btxt%5D/)[1]); bhTltp.appendChild(tLabel); tipTitle.textContent = decodeURIComponent(tipTxt.replace(/%5Bhst%5D.*%5Bhst%5D|%5Btxt%5D.*%5Btxt%5D/g, '')); } else tipTitle.textContent = tipTxt.split(/\[hst\].*\[hst\]/)[1]; bhTltp.addEventListener('popuphiding', function func() { if (hLabel) bhTltp.removeChild(hLabel); if (tLabel) bhTltp.removeChild(tLabel); bhTltp.removeEventListener('popuphiding', func); }) } }, false, document.getElementById('bhTooltip')); Обратите внимание, что старые закладки придется отредактировать, заменив [] и ::, для имени домена и скопированного текста. Т.е., должно стать так Выделить код Код:[hst]forum.mozilla-russia.org[hst][CB]Двойным левым кликом добавить закладку в папку[txt]должно стать так[txt][Mozilla] Тогда будет так: |
turbot > 21-05-2016 01:15:19 |
Стиль отклеиился при отправке Выделить код Код:menuitem.bookmark-item .menu-iconic-accel, #bhTooltip #bhtHst { font-weight: bold !important; } #bhTooltip #bhtTxt { font-style: italic!important; } |
Stkvsky > 21-05-2016 01:35:40 |
turbot Класс) Спасибо, а я думал попросить убрать квадратные скобки, но не решился, теперь вообще огонь) 21-05-2016 01:40:06 21-05-2016 01:56:07 |
turbot > 21-05-2016 02:08:38 |
Stakhovsky пишет
Замените на
Не, не осилю. Если только снова пиво и вдохновение не посетят. |
Stkvsky > 21-05-2016 02:12:34 |
ясно, ок, спасибо) 21-05-2016 02:23:08 |
turbot > 21-05-2016 02:31:09 |
Stakhovsky и это замените тогда, чтоб визуально отбивать текст |
Stkvsky > 21-05-2016 02:35:37 |
turbot |
turbot > 21-05-2016 04:25:59 |
Stakhovsky скрытый текст Выделить код Код:addEventListener("dblclick", function(e) { var target = e.originalTarget; if ( e.button !== 0 || !target._placesNode || !PlacesUtils.nodeIsFolder( target._placesNode ) ) return; var hostName = '[hst]' + window.gBrowser.selectedBrowser.contentWindow.location.hostname + '[hst]'; var docTitle = ( content.document.title || gBrowser.mCurrentTab.label).substr(0, 50); var folderId = PlacesUtils.getConcreteItemId( target._placesNode ); var folderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var parentFolderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var currentURI = Services.io.newURI( content.location, null, null ); var getSel = document.commandDispatcher.focusedWindow.content.document.getSelection().toString(); var selTxt = ''; if (getSel) selTxt = '[txt] :: ' + getSel + ' :: [txt]'; PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, hostName + docTitle + selTxt + '[' + folderTitle + ']'); // всплывающая подсказка .... var favicon = ( !!gBrowser.mCurrentTab.image ) ? gBrowser.mCurrentTab.image : "chrome://global/skin/icons/Portrait.png"; Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService) .showAlertNotification( favicon, "Добавил в папку " + folderTitle + ":", docTitle, false, "", null, ""); }); addEventListener('popupshowing', e=> { var popup = e.originalTarget; if (!(popup.localName == 'menupopup' && popup.hasAttribute('placespopup'))) return; Array.slice(popup.querySelectorAll('menuitem.bookmark-item')).forEach(mItem=> { var label = mItem.label; if (!label.startsWith('[hst]')) return; var host = label.split(/\[hst\](.*)\[hst\]/)[1]; mItem.setAttribute('acceltext', host); if (label.indexOf('[txt]') !== -1) { label = encodeURIComponent(label); mItem.label = decodeURIComponent(label.replace(/%5Bhst%5D.*%5Bhst%5D|%5Btxt%5D/g, '')); } else mItem.label = label.split(/\[hst\].*\[hst\]/)[1]; }) }, false, window); addEventListener('popupshowing', e=> { var bhTltp = e.originalTarget; var tipTitle = document.getElementById('bhtTitleText'); var tipTxt = tipTitle.textContent; if (tipTxt.startsWith('[hst]')) { var hLabel = document.createElement('label'); hLabel.id = 'bhtHst'; hLabel.textContent = tipTxt.split(/\[hst\](.*)\[hst\]/)[1]; bhTltp.appendChild(hLabel); if (tipTxt.indexOf('[txt]') !== -1) { tipTxt = encodeURIComponent(tipTxt); var tLabel = document.createElement('label'); tLabel.id = 'bhtTxt'; tLabel.textContent = decodeURIComponent(tipTxt.split(/%5Btxt%5D(.*)%5Btxt%5D/)[1]); bhTltp.appendChild(tLabel); tipTitle.textContent = decodeURIComponent(tipTxt.replace(/%5Bhst%5D.*%5Bhst%5D|%5Btxt%5D.*%5Btxt%5D/g, '')); } else tipTitle.textContent = tipTxt.split(/\[hst\].*\[hst\]/)[1]; bhTltp.addEventListener('popuphiding', function func() { if (hLabel) bhTltp.removeChild(hLabel); if (tLabel) bhTltp.removeChild(tLabel); bhTltp.removeEventListener('popuphiding', func); }) } }, false, document.getElementById('bhTooltip')); UPD: "Прооптимизировал", насколько смог. Может сюда заглянет Dumby или bunda1 и наставят, как тут можно было бы удалить листенер на popuphiding, для анонимной функции. |
Stkvsky > 22-05-2016 21:01:44 |
turbot ага, спасибо. |
Stkvsky > 24-05-2019 12:55:18 |
У меня к этой кнопке в конце добавлен код gBrowser.removeCurrentTab(); скрытый текст Выделить код Код:// Двойным левым кликом на папке закладок добавлять закладку в папку закладок, от 15.08.2016. ...................... addEventListener("dblclick", (e, targ = e.originalTarget)=> { if ( e.button || !targ._placesNode || !PlacesUtils.nodeIsFolder(targ._placesNode) ) return; var docTitle = (content.document.title || gBrowser.mCurrentTab.label).substr(0, 50); var folderId = PlacesUtils.getConcreteItemId(targ._placesNode); var folderTitle = PlacesUtils.bookmarks.getItemTitle(folderId); var currentURI = Services.io.newURI(content.location, null, null); PlacesUtils.bookmarks.insertBookmark(folderId, currentURI, 0, docTitle); // всплывающая подсказка .... var favicon = gBrowser.mCurrentTab.image || "chrome://global/skin/icons/Portrait.png"; Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService) .showAlertNotification(favicon, "Добавил в папку " + folderTitle + ":", docTitle); document.getElementById("contentAreaContextMenu").hidePopup(); gBrowser.removeCurrentTab(); }); А можно пожалуйста поставить таймер перед срабатыванием этого кода на пол секунды или секунду? Потому что другое дополнение не успевает делать скриншот страницы для эскиза закладки. |
bunda1 > 24-05-2019 13:34:58 |
Stkvsky > 24-05-2019 14:38:12 |
bunda1 |
Stkvsky > 05-06-2019 22:23:48 |
bunda1 |
bunda1 > 05-06-2019 22:32:16 |
Что значит одинарным правым? |
Stkvsky > 05-06-2019 22:34:50 |
bunda1 |
bunda1 > 05-06-2019 22:37:10 |
Stkvsky пишет
Ну а контекстно меню папки закладок? |
Stkvsky > 05-06-2019 22:42:38 |
bunda1 |
bunda1 > 06-06-2019 08:52:48 |
Stkvsky пишет
Выделить код Код:// Правым кликом на папке закладок добавлять закладку в папку закладок, от 06.06.2019. ...................... addEventListener("click", (e, targ = e.originalTarget)=> { if ( e.button != 2 || !targ._placesNode || !PlacesUtils.nodeIsFolder(targ._placesNode) ) return; var docTitle = gBrowser.selectedTab.label.substr(0, 50); var folderId = PlacesUtils.getConcreteItemId(targ._placesNode); var folderTitle = PlacesUtils.bookmarks.getItemTitle(folderId); var currentURI = Services.io.newURI(gBrowser.currentURI.spec, null, null); PlacesUtils.bookmarks.insertBookmark(folderId, currentURI, 0, docTitle); // всплывающая подсказка .... var favicon = gBrowser.selectedTab.image || "chrome://global/skin/icons/Portrait.png"; Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService) .showAlertNotification(favicon, "Добавил в папку " + folderTitle + ":", docTitle); setTimeout(()=> { document.getElementById("placesContext").hidePopup() }, 50); }); 06-06-2019 08:53:57 Stkvsky пишет
Нет, в боковой панели точно работать будет. |
Stkvsky > 06-06-2019 10:34:29 |
bunda1 |
Stkvsky > 06-06-2019 11:06:54 |
В боковой панели кстати работает |
Stkvsky > 14-11-2019 23:42:55 |
bunda1 |
Garalf > 15-11-2019 11:06:27 |
Stkvsky |
Stkvsky > 15-11-2019 11:46:19 |
Garalf |
_backup > 16-03-2020 20:17:19 |
Можно сделать так что бы добавленная закладка была последней в папке, а не первой? |
bunda1 > 17-03-2020 15:03:54 |
В: замени 0 на -1 |
_backup > 17-03-2020 16:58:23 |
bunda1, спасибо. |
voqabuhe > 14-05-2020 15:41:31 |
Эту кнопку можно реанимировать? |