если выделение в ссылках работает (работает же?)
ну да
произошло недопонимание, и предложенный код был воспринят
в общем, видимо, всё так и произошло (приношу извинение за своё недопонимание)
я около часа перепроверял всё, что смог, и пока ничего плохого не обнаружил:
- текст внутри ссылок выделяется как надо
- ссылки открываются как надо (двумя способами)
у меня в файле click.js (в конце) было вот это:
[spoiler][code]
/* attempt-2 to obtain: convenient selection of text in links */
(() => {
var link, href, x, y, cssvar = "--selcolorlocker";
var ret = () => {
link.setAttribute("href", href);
link.style.removeProperty(cssvar);
link.getAttribute("style") === "" && link.removeAttribute("style");
link = null;
}
var restore = e => {
window.removeEventListener("mouseup", restore, true);
window.removeEventListener("dragend", restore, true);
e.screenX != x || e.screenY != y ? requestAnimationFrame(ret) : ret()
может ли проблема быть в какой-то настройке из about:config?
может ли проблема быть в какой-то настройке из tab-mix-plus?
если верно предполагаю, у себя ты проверить не имеешь возможности (клик по pg-ссылке)
(в поисковых результатах точно нет, раз уж там требуется регистрация,
но если что - регистрация не нужна, чтобы просто открыть любой раздел)
я на всякий случай пробовал (безуспешно) лисе подсунуть временный userContent.css,
из которого поубирал почти всё, например:
a.pg { text-decoration: none !important; }
img {display: none !important;}
a:focus {text-decoration: none !important;}
a:hover {text-decoration: none !important;}
@-moz-document domain(rutracker.org){
a.postLink,
TD.nav.w100[style="padding-left: 8px;"],
и ещё тут десятки (упоминавшихся ранее) строк
{display: none !important;} }
- на странице с data-адресом (из №147) кликаю на pg-ссылка
- открывается следующая (фоновая) вкладка
у которой адрес: about:logo
и название: (PNG Image, 300 x 236 pixels)
- в консоли: после фильтра по тексту [pg]
стерильная пустота
Затем, в Консоли браузера, фильтруем сообщения по тексту «[pg]»
после фильтрации: в консоли пусто
about:logo у меня пустая:
- но так полагаю, что это ничего не меняет
- это, видимо, из-за img {display: none !important;} в userContent.css
я уже было хотел закрывать лису и консоль, но ещё просто так потыкал на pg-ссылку (с Ctrl),
и в консоли что-то появилось:
[PG] 312051.90 mousedown(), link detected
[PG] 312155.34 restore(), mouseup (992 992) (341 341)
[PG] 312155.40 restore(), ctrlKey detected, set skip to false, got false
[PG] 312155.41 ret(), skip is false
[PG] 312156.15 click()
вот на всякий случай повтор (с Ctrl) (при другом запуске лисы):
[PG] 57499.12 mousedown(), link detected
[PG] 57594.69 restore(), mouseup (970 970) (342 342)
[PG] 57594.73 restore(), ctrlKey detected, set skip to false, got false
[PG] 57594.74 ret(), skip is false
[PG] 57595.44 click()
07-10-2022 23:01:06
а может коду не нравится pg?:
можно попробовать временно переключать настройку
мне показалось, что это звучит чуть ли не как решённая проблема, но в итоге ничего не изменилось
вот на всякий случай весь код (надеюсь, что это я напутал что-то):
[code](() => {
var link, href, x, y, cssvar = "--selcolorlocker";
var sip = Services.prefs.setIntPref;
var pn = "extensions.tabmix.opentabforLinks";
var set1 = sip.bind(null, pn, 1);
var check = () => {
return link.className == "pg";
}
var click = e => {
link.removeEventListener("click", click, true);
e.preventDefault();
loadURI(link.href, link.ownerDocument.documentURIObject);
link = null;
}
var ret = skip => {
link.setAttribute("href", href);
link.style.removeProperty(cssvar);
link.getAttribute("style") === "" && link.removeAttribute("style");
skip ? link = null : link.addEventListener("click", click, true);
}
var restore = e => {
window.removeEventListener("mouseup", restore, true);
window.removeEventListener("dragend",
сейчас у меня в tab-mix-plus:
A) open links with a target attribute in current tab --- no
B) force to open in new tab --- yes (all links)
есть ли смысл пробовать пойти обратным путём?:
- отключить настройку В (это вернёт тот вариант, который у меня был раньше всегда)
- подкорректировать код так, чтобы он обращал внимание
не на мелкие pg-ссылки (переключающие страницы данного раздела),
а на длинные ссылки (открывающие какую-то конкретную тему данного раздела)
про длинные ссылки инспектор пишет:
1) если тема в каком-то разделе: a#tt-6195619.torTopic.bold.tt-text
6195619 - это всего лишь одна тема (данное число всегда будет разным)
2) но если тема в поисковых результатах, то там почему-то другой расклад: a.topictitle.ts-text
видимо, это была глупая попытка, но всё же я попробовал вот это:
- отключил настройку В
- в строке [b]return link.className == "pg"[/
Если, допустим, и на странице с таким адресом
при клике на надпись "pg-ссылка"
создаётся новая фоновая вкладка: about:logo
при клике (+ зажатом Ctrl) на надпись "pg-ссылка"
about:logo открывается в текущей вкладке
есть ли смысл пробовать в строке return link.className == "pg" изменить pg на a.pg ?
так понимаю, что в лисьем скриптовом языке нет чего-то по типу как в ahk:
if mouse is over "такой-то класс этой зоны окна" (а в случае с лисой - не окна, а ссылки),
then: open link in current tab (= игнорировать соответствующую настройку из tab-mix-plus:
options > links > force to open in new tab: all links)
я заменил
var check = () => { var res, doc = link.ownerDocument, loc = doc.location; if (loc.hostname == "rutracker.org") res = /^(?:\d+|((?:Пред|След)\.))$/.test(link.textContent); return res; }
на:
результата нет - при простом клике любые ссылки открываются в следующей вкладке (фоновой)
(при зажатом Ctrl: pg-ссылки открываются как надо - в этой же вкладке)
Можно попробовать добавить e.ctrlKey && e.preventDefault();
добавил - выделения элементов в таблицах больше нет
eсли чего-то плохого не обнаружится, то можно считать, что реализация с Ctrl решена полностью
этот вариант с Ctrl не особо добавляет счастья, но всё равно спасибо тебе
за возможность располагать теперь и таким альтернативным подходом тоже
просто я только сегодня подумал, что он вряд ли особо удобнее, чем уже имевшееся стандартное:
1) клик на ссылко-страницу
2) при курсоре над лисой: простое нажатие (что всегда лучше, чем удерживание) нa F5 (F5 у меня - это "close tab") (Ctrl+W)
(ведь зачем жать Ctrl+W, если F5 гораздо удобнее)
(a обновить страницу у меня - это Num- на которую уже 13 лет как переназначен функционал кнопки F5) (для всех программ)
жаль, что непонятно, как сделать тоже самое (что уже сейчас даёт этoт альтернативный подход), но без необходимости жать Ctrl
то и переделать
…
Ну типа a.pg { text-decoration: none !important; }
не знаю, правильно ли это, но я вот просто так данную строчку и добавил - и эти подчёркивания убрались
Вместо loadURI(href, нужно loadURI(link.href,
сделал - а результат такой:
- как я понял, про самый лучший вариант (вообще без Ctrl) можно, наверно, забыть (к сожалению)
(почему-то я думал, что, возможно, как-то поможет информация по типу: div#pagination.nav.clearfix)
- вариант с Ctrl теперь срабатывает, но при этом имеется неприемлемый визуальный дефект,
на который проще посмотреть, чем пытаться описать словами:
(этот дефект был и при прошлом варианте кода, когда Ctrl ещё не срабатывал)
в первом скрине (при Ctrl + клике на ссылко-страницу) (ссылко-страницa - это, например: 3, или След.)
дефект выражается в появляющемся синем обрамлении сверху - почти по всей ширине скрина - вокруг трёх строк:
Формула-1 (2022)
Страни
А селектор — сам смотри какой нужен
а можно какой-нибудь шаблон/пример? допустим, что-то типа такого:
[style*="--selector: <a> "] { text-decoration: none !important; }
Вот, попробовал вписать Ctrl, и, для описанных, даже без Ctrl
я не очень понял эту фразу в целом:
- для описанных - кого?
- если уже есть "даже без Ctrl", то зачем тогда Ctrl вообще?
в общем, cначала я пробовал вообще без Ctrl - и совсем никаких изменений/улучшений не заметил
затем я пробовал с Ctrl - и в результате появилась такая страница:
Server not found
Firefox can't find the server at www.viewforum.php.
я пробовал с Ctrl раз 5, и после первого раза даже вылезло что-то типа: unresponsive script
(после того как вернулся от страницы "Server not found" на предыдущую стрaницу)
в этом мелком окошке (там, где "unresponsive script") ни одну из трёх кнопок нажать не удалось,
но оно само излечилось/убралось через несколько секунд
по поводу нижне
добавление text-decoration помогло - спасибо
чуть по другой теме: есть вот такое мелкое неудобство -
в подавляющем меньшинстве случаев данный (новый для меня) функционал не является особо удобным:
- при простом левом клике на ссылку, она открывается в следующей вкладке (фоновой)
(эти моменты важны - мне именно так и нужно)
но я и в теории ничего не сумел придумать лучше, чем идею о том, чтобы добавить код,
который бы при зажатом Ctrl (и одновременном клике на ссылку) открывал её не в следующей вкладке (фоновой),
а как и раньше у меня всегда было - в этой же вкладке
вот пример этой мелкой хотелки (из ру-трэкера):
- обычные ссылки (они зачастую длинные) открывать в следующей вкладке (фоновой)
- a страничные мелкие ссылки открывать в текущей вкладке,
они выглядят так: 1 или 2 или 3 ... 67 ... 115 ... (или Пред.) (или След.)
эти страничные ссылки видны в двух местах (над списком тем
А, можно же вместо цвета написать unset
написал unset
Нужно, соответственно, добавить в userContent.css
добавил
И добавил снятие выделения по mousedown
спасибо за этот улучшенный код - с ним теперь ситуация такая:
пункт 4: вроде бы решён
пункт 5: вроде бы решён
пункт 3: проблема с подчёркиванием (чёрных ссылок) остаётся
(эта проблема также касается и случаев с серыми ссылками,
и случаев с выделением текста уже внутри выделенного текста)
вряд ли это мелкое наблюдение поможет, но упомяну его:
- если ссылка чёрная: подчёркивание ссылки чёрное
- если ссылка серая: подчёркивание ссылки серое
Из-за снятой в настройках галки «Подчёркивать ссылки»
если вдруг надо будет, могу её добавить -
мне главное, чтобы ссылки не подчёркивались
(сейчас вот я попробовал эту галку включить на минуту - ничего не поменялось)
ещё одно наблюдение на всякий случай:
подчёркивание не появляется (ни в чёрных ссылках, ни в се
этот код явно близок к тому, что нужно, но использовать его в таком виде я очень вряд ли смогу
не слишком легко пояснить, что именно не так, но попытаюсь:
1) у меня выставлены такие настройки в "options - content - colors":
- text and background:
text (black) (левый нижний квадратик) background (white) (левый верхний квадратик) use system colors (yes)
- link colors:
unvisited links (black) (левый нижний квадратик) visited links (grey) (левый квадратик: cразу под white)
underline links (no)
- override the colors specified by the page with my selections above (always)
2) периодически мне нужно выделять текст внутри разных ссылок:
- и посещённых ранее (они серые) (rgb 204, 204, 204)
- и не посещённых ранее (они чёрные) (rgb 0, 0, 0)
здесь же упомяну информацию о другом сером цвете (более тёмном) (rgb 176, 176, 176),
который является фоновым внутри выделенного текста и посещённых ранее ссылок, и не посе
Dumby, появился необсуждавшийся ранее вопрос,
но, к сожалению, он из тех, которые тебе не очень по нраву
суть заключается в попытке понять, можно ли каким-то образом облегчить/улучшить ситуацию
с выделением текста внутри ссылок:
- делаю это довольно часто
- а вот перетаскивать ссылки мне никогда не требуется
- и жестов мышиных (с участием ссылок) тоже уже нет никаких - да и вообще жестов больше нет вовсе
(ранее годами: жесты некоторые были, но в связи с свежим удалением почти всех расширений
этот неоптимальный подход мной, к счастью, теперь не используется,
так как до меня дошло, что жесты мне просто неудобны)
так вот, может ли какой-то новый небольшой код как-то помочь?
сейчас по ссылкам такая ситуация:
- при простом левом клике на ссылку, она открывается в следующей вкладке (фоновой)
(эти моменты важны - мне именно так и нужно)
- при этом во время клика - текст ссылки окрашивается в красный
(можно ли это убрать? сделав так, чтобы цвет
Ну так "downloads" это и не дерево. От чего-то такого плясть можно
пляска улучшила ситуацию - спасибо
тогда, либо отказаться от #detailsDeck { height: auto !important; }
это, конечно, вариант (я даже его проверил) --- но всё-таки отказываться не хочется
либо ультимативная правка кода (оптимизировать не буду)
ок, я понял - пусть будет в слегка недоделанном виде - всё равно так ощутимо лучше, чем было
а в связи с числом 200 мной пробовались такие оптимизации:
- сначала я посмотрел на 200 (долговато авто-скролится)
- затем 50 (лучше, но не намного)
- затем 0 (не годится, так как не срабатывает нормально)
- затем 5 (не годится, так как не срабатывает нормально)
- затем 10 (не годится, так как не срабатывает нормально)
- затем 20 (вроде, срабатывает нормально) (но не сказать, что чем-то лучше, чем 50)
- пока я оставил 20 (по всей видимости, так теперь всегда и будет)
просто поделюсь обновлённой информацией по поводу тог
А, цвет выделенного в деревьях. Ну как-то так
в "library - history" сработало (спасибо большое), а в "library - downloads" - нет
и вот это не помогло:
#Downloads > treechildren::-moz-tree-row(selected) { background-color: #d4d0c8 !important; }
#Downloads > treechildren::-moz-tree-cell-text(selected) { color: black !important; }
#OrganizerQuery_Downloads > treechildren::-moz-tree-row(selected) { background-color: #d4d0c8 !important; }
#OrganizerQuery_Downloads > treechildren::-moz-tree-cell-text(selected) { color: black !important; }
А то получается — не люблю расширения, поудаляю везде
не совсем так, ведь в дополнительном браузере у меня осталось:
- menu wizard, tab mix plus, toolbar buttons
- u-block origin (с какого-то не очень давнего момента он типа поломался, но я пока не занимался выяснением причин и починкой)
- ad-block (disabled), CTR (disabled), toggle system colors (disabled)
- expire history by days (disabled) (вот как раз
вот эта новая строка: menu { border-color: transparent !important; }
вроде бы решила проблему, описанную в прошлом моём сообщении данными словами:
"гноящиеся из-за таблетки пальцы тоже хотелось бы вылечить"
но не знаю, привнесла ли эта строка что-то негативное (пока я ничего подобного не заметил)
ещё такой новый момент, замеченный только что:
- любое появление этой прямоугольной рамки исчезло в случае с тремя кнопками в "history"
- но в случае с двумя кнопками в "downloads" (organize, clear downloads) -
прямоугольная рамка всё равно появляется - над кнопкой "clear downloads",
и вот это не помогло:
menu[_moz-ClearDownloads] { border-color: transparent !important; }
menu[_ClearDownloads] { border-color: transparent !important; }
menuitem > .ClearDownloads { border-color: transparent !important; }
menu[_moz-Downloads] { border-color: transparent !important; }
menu[_Downloads] { border-color: transparent !important; }
menuitem > .Downloads { border-colo
Или, может, создай две строковые настройки
ui.textSelectBackground и ui.textSelectForeground
с валидными значениями, типа lightblue или #9a0303
- в about:config я создал две новые string-cтроки: #9a0303
- это ничего не изменило - там, где изменение нужно - в library - заменить тёмно-синий цвет на серый,
то есть, сделать так, чтобы цвета в выделенной строке никак не менялись
(вне зависимости от того, в фокусе эта строка или нет),
сейчас же происходит так: 1. синий цвет, если в фокусе 2. серый цвет, если не в фокусе
подробнее про цвета в выделенной строке:
сейчас в фокусе: текст - белый фон - тёмно-синий
сейчас не в фокусе: текст - чёрный фон - серый
должно стать всегда: текст - чёрный фон - серый
- это испортило цвет текста внутри выделeнной строки (на странице) (не в library)
- испорченный цвет я исправил (убрав
Если не разворачиваешь и не пользуешься, тогда можно удалить
эти 2 строки оставлю (просто на всякий случай)
#placeContent[place="place:folder=TOOLBAR&expandQueries=0"]
сработало - спасибо
Ищи id'шники или иные селекторы, или самый общий для всех
где и как искать? (inspector?)
Верни в тестовый экземпляр лисы все девелоперские расширения
зачем?
Или, может, создай две строковые настройки
ui.textSelectBackground и ui.textSelectForeground
- создать две новые string-cтроки в about:config?
- а это не перепортит имеющуюся настройку? (в файле userContent.css)
(как раз связанную с цветами при выделении текста на странице):
::-moz-selection, textarea::-moz-selection { background: rgba(176,176,176, 1.0) !important; color: #fcfcfc !important; }
menu:hover { border-color: transparent !important; }
menu[_moz-menuactive] { padding: 2px 1px 2px 4px !important; }
сработ
…var max = screen.height - 8, mp = max + "px";
замена 8 на 10 убрала изъян - спасибо за подсказку, стало явно лучше,
хоть и всё равно не вполне идеально (в целом по виду пунктoв opened/closed), но тут уже твой код никак не виноват
Но чего-то умнее в голову не приходит, поэтому пока так
проблем по скролу я пока не вижу, так что обновлённый код точно стал полезен
Вот ещё немного из спрашиваемого, но не всё
я добавил этот код:
[code]#placeContent > treechildren::-moz-tree-image(container, OrganizerQuery_BookmarksToolbar),
#placeContent > treechildren::-moz-tree-twisty(container, OrganizerQuery_BookmarksToolbar),
#placeContent > treechildren::-moz-tree-image(container, OrganizerQuery_BookmarksMenu),
#placeContent > treechildren::-moz-tree-twisty(container, OrganizerQuery_BookmarksMenu),
#placeContent > treechildren::-moz-tree-image(container, OrganizerQuery_UnfiledBookmarks),
#placeContent > treechildren::-moz-tree-twisty(container, Organize
более полноценно ответить смогу только через часов 15, а пока так:
за обновлённый код благодарю, буду тестировать
Можно, например, запоминать номер первой видимой строки
скорее всего, этого будет вполне достаточно
Если поднял интервал до 60 секунд чтобы было меньше записи на диск
да - вероятно лет 5-7 назад я так и сделал (не помню точно),
и не особо помню, что там было изначально - возможно, 15 000
Зависит от цели
цели две, но они в таком сочетании тебе, наверно, не понравятся:
- чтобы было меньше записи на диск (ибо это жёсткий диск, а с ним надо бережнее)
- чтобы фф почаще себя бэкапил (полностью, или ещё как-то - я ж даже не знаю, что именно он там каждые 60с делает)
и я не просто так уточнял (может, как раз ищу этот баланс, и поэтому советуюсь)
Так и остальные
а по остальным двум мне и тем более не так очевидно, например:
maximum amount of POSTDATA = 0 это хорошо для чего? и плохо для чего?
[
8) как сделать так, чтобы в Library (в дереве) пункт History всегда был свёрнут?
в настоящее время: лиса не запоминает это сворачивание, если я сам его осуществляю
9) уточню на всякий случай по поводу "tab mix plus > session > advanced setting", оптимальны ли эти настройки?:
- minimum time interval between 2 state saves (in ms): 60 000
- save sensitive data (form date, POSTDATA and cookies) for: all sites
- maximum amount of POSTDATA to be stored (in bytes, -1 = all of it): 0
10) впервые за эти 12 дней: количество вкладок уменьшилось до 70, и только теперь стало понятно, что расширение "tab mix plus"
не виновато в недавно описанных визуальных проблемах с пунктами opened и closed
то есть, например, если и там, и там по 70 строк, то всё ровно:
и по пикселям, и по строкам, и по размерам содержимого этих двух пунктов
получается, что эти визуа
попробую забрать пункт «Журнал» под это дело полностью
спасибо за улучшение кода --- и за "Остальное" тоже
1) теперь после нажатия на кнопку del выделенные строки/строка удаляются без последующей переброски в тот ненужный мелкий список,
но при этом происходит автоматическая принудительная прокрутка всего списка (в самый верх):
можно ли сказать лисе, чтобы в этом случае список сам никуда не скролился? (по возможности)
(насколько помню, без этого кода так и происходило - скрол не перемещался в самый верх)
и сюда же очень похожий вопрос про позицию скрола,
но только уже не применительно к спискy посещённых страниц, а применительно к стёртомy текстy (в поисковом поле):
можно ли сделать так, чтобы после стирания поискового запроса
(во вновь появившемся полном списке истории посещений) происходило восстановление позиции вертикального скрола?
2) в library > в левой стороне: почти все иконки теперь ск
в истории посещений обнаружена ещё одна проблема:
после нажатия на кнопку del выделенные строки/строка должны просто удалиться
(без последующей переброски во всё тот же бессмысленный мелкий список: today, yesterday, last 7 days...)
новое уточнение - как удалить весь этот мелкий мусор?:
- (в history > совсем снизу) пункт "tags" и заодно его кнопку со стрелкой вниз (эта кнопка - в правой стороне данного пункта/cтроки "tags")
- (в library > в поисковых полях) надписи: Search History Search Downloads Search Bookmarks
- (в library > в поисковых полях) контекстные менюшки
- (в library > в поисковых полях) все иконки ("увеличительное стекло", "синий крестик" и другие, если они есть)
- (в library > в левой стороне > все иконки) history; yesterday...; downloads; tags; all bookmarks; bookmarks toolbar; bookmarks menu; unsorted bookmarks
- (в library > в левой стороне > пункты) unsorted bookmarks, bookmarks