В кодовую базу Chromium включена (https://chromium-review.googlesource.com/c/chromium/src/+/14...) реализация режима Scroll-To-Text (https://github.com/bokand/ScrollToTextFragment), который позволяет формировать ссылки на отдельные слова или фразы, без явного указания в документе меток при помощи тега "a name" или свойства "id". Реализация режима уже включена в состав экспериментальных сборок (https://www.google.com/chrome/canary/) Chrome, на основе которых будет сформирован релиз 74 (доступна начиная со сборки 74.0.3706.0). Для включения в настройках следует активировать опцию "chrome://flags#enable-text-fragment-anchor".Для передачи ссылки предлагается специальный параметр
"#targetText=", в котором можно указать текст для перехода. Например, при открытии ссылки "https://opennet.ru/50156/#targetText=Chromium" страница сдвинется на позицию с первым упоминанием слова "Chromium" и данное слово будет подсвечено. По сути предложенная опция автоматизирует выполнение операции поиска с прокруткой сразу после открытии страницы. Для сокращения размера ссылки на большие блоки текста допускается указание маски, включающей фразы, указывающие на начало и конец фрагмента с использованием запятой в качестве их разделителя (например, "example.com#targetText=start%20words,end%20words").
URL: https://www.chromestory.com/2019/02/chrome-scroll-to-text/
Новость: https://www.opennet.dev/opennews/art.shtml?num=50156
Удивительно, что только сейчас об этом додумались. Изменение реально полезное.
Полезное? По следующей ссылке может оказаться вредоносная страница.
> Полезное? По следующей ссылке может оказаться вредоносная страница.Вы дальше заголовка новость вообще читали? Чем по вредоносности обычная ссылка отличается от ссылки с переходом на по якорю на странице?
Отвечу за брата.
Читал.
Отличается парсером регулярных выражений.Ты сам-то новость читал?
Не надо путать поиск текста с регулярными выражениями. Это абсолютно разные вещи.
Просто сейчас чаще всего поиск реализован на регулярках.
И что же здесь такого полезного, чего нельзя было сделать раньше? Просто гугл снова ломает совместимость сомнительными нововведениями.
> И что же здесь такого полезного, чего нельзя было сделать раньше?Сделать ссылку для перехода на произвольную часть страницы без правки этой страницы.
И? Можно подумать, 95% веб-мастеров и контент-менеджеров вручную меняют код страниц, а не пользуются CMS-ными редакторами в режиме WYSIWYG, где и так достаточно пару кнопок ткнуть.
Причём здесь web-мастера? Любой посетитель может оформить ссылку на любой кусок текста.
Например, вместо того, чтобы отправлять ссылку на всю страницу и писать "исправь опечатку в восьмом слове пятого параграфа" теперь будет достаточно просто отправить одну ссылку.
> Причём здесь web-мастера? Любой посетитель может оформить ссылку на любой кусок текста.А из буханки черного можно сделать троллейбус. Но зачем?
> Например, вместо того, чтобы отправлять ссылку на всю страницу и писать "исправь
> опечатку в восьмом слове пятого параграфа" теперь будет достаточно просто отправить
> одну ссылку.Вот только уже не первый десяток лет на многих сайтах работает функция "Нашли ошибку на странице? Выделите и нажмите Ctrl+Enter". Или предлагаешь отправлять ссылку на слово в почту/мессенджер/астрал владельца сайта? Это настолько нишевый вариант применения, что не пригодится практически никому.
И чем реализация сторонним скриптом отличается от зондированной гугловской? Сейчас Гугл просто изобрел велосипед, причем велосипед монопольный.
> Это настолько нишевый вариант применения, что не пригодится практически никому.Ну вот вы читаете некоторую статью, находите 2 интересных абзаца текста и хотите скинуть их другу. Но при этом хотите дать ему возможность прочитать всю статью если он захочет.
Вы выделяете 2 абзаца и даёте ссылку на них другу. Он переходит на страницу, а нужный ему текст подсвечен. При этом он может прочитать всё остальное.
И не надо для этого копировать два абзаца, выделать их как цитаты, потом возращаться в браузер, копировать адрес статьи. А другу если он захочет прочитать всё целиком -- не нужно потом на странице пользоваться поиском.
Очень неудобно.
Очень нужно. Один раз в миллион лет.
Ну не жри если не хочешь. Тебе чё, в глотку насильно забивают, ckotina? Тебе не надо, кому-то пригодится. Привыкли только о себе думать, yроды.
Как это будет работать на "бесконечной" портянки текста фейсбучка и прочих сайтиков вытаскивающих страницу кусками через js?
Для не читателей но писателей.Предложенная возможность является рабочим прототипом, который планируется обсудить с сообществом и разработчиками других браузеров, после чего использовать в качестве основы для стандартизации общего для разных браузеров решения.
Вот он уже и обсуждает.
> Как это будет работать на "бесконечной" портянки текста фейсбучка и прочих сайтиков
> вытаскивающих страницу кусками через js?никак не будет без поддержки жаваскриптом на самой странице
В потертом модерами было замечание что фейсбук добавляет новый текст сверху ленты. Поэтому даже с поддержкой js на нужный кусок текста дать ссылку не получится. Она просто может переехать на другой кусок текста.
которая перейдёт прямиком в рекламный блок...
Удобное применение - для того чтобы давать точные ссылки на нужное место на внешнем сайте при общении в сети. Например на каком-то форуме идет какое-то обсуждение, участники могут давать точные ссылки друг другу на пруфы во внешних источниках, если на этих источниках большие простыни текста без разметки.
Действительно отличное нововведение. Судя по тексту
--
страница сдвинется на позицию с первым упоминанием слова "Chromium" и данное слово будет подсвечено. По сути предложенная опция автоматизирует выполнение операции поиска с прокруткой сразу после открытии страницы.
--
это именно переход на произвольную часть страницы, а не куда необходимо.
> это именно переход на произвольную часть страницы, а не куда необходимо.Вот вы выделите кусок текста, нажмете "скопировать ссылку сюда" и браузер сам сгенерит уникальный диапазон с этими <text_start>,<text_end>
И зачем ты мне написал не ответ на вопрос который я не задавал?
>> совместимостьКакую совместимость? Если браузер не поддерживает этот параметр, то он по-прежнему просто откроет ссылку без прокрутки к слову после открытия.
Это и называется совместимость.
Задумались проиндексировать ключевые слова в ссылках, добродушно составленных пользователями? /* одевает котелок, прячется под диван */
всем только на пользу будет
Тот редкий случай, когда нововведение полезное: прокрутит куда надо, плюс минимизирует количество жабаскрипта, а то пришлось бы им крутить.
оно соберёт информацию, которая интересна на сайте ( с какой строчки ), потом в поиске будет выдан не заголовок сайта а конкретный отрезок, потом по "вашим предпочтениям" вам будут выдаваться куски текста с сайтов без переходов и постепенно мир замкнётся... ;)
Какой-то колхоз...
Опять гугл вносит несовместимые изменения, поощеряющие быдлокодинг. Кстати, никто не знает, почему у меня Гугл вчера вечером (мск) совсем перестал открываться?
РКН тестирует отключение внешних каналов (в целях безопасности, разумеется).
А пруфы есть? Новость прошла что только "будут". Интересно, подаст ли на них в суд ООО "Гугл" за потерянрую прибыль?
В первом чтении закон уже приняли. До апреля, вроде, должны протестировать систему.
Я не про чтения спрашиваю, а про
1. легальность его исполнения до вступление в силу (закон не может вступить в силу до третьего чтения)
2. погашение убытков пострадавшим сторонам, напр. материального ущерба ООО "Гугл" и морального ущерба мне.
3. у кого-нибудь гугл тоже не работает?
У меня все нормально работало и работает
Потому что открывали google.com. В отличие от него, google.ru нормально работал. Кроме того, сложности возникали по ходу не с доступом к серверу, а с сертификатами, потому как через wget или браузеры типа links2, которые тянут по http, всё открывалось и работало.
Потом будем читать о внезапно найденных уязвимостях, появившихся из-за этой фичи.
Даже сейчас можно придумать кучу уловок чтобы направить юзеров рекламу в нужное место.
М-м-м, собственные расширения стандарта, работающие только в самом распространённом движке… Монополия, я скучал по тебе (нет).
https://github.com/bokand/ScrollToTextFragment#a-note-on-spe...
В чем отличие от IE ? то же самое было. Мы крутые фишки добавим, а вы догоняйте своими стандартами
Надеюсь в Firefox тоже добавят. Всегда раздражало что когда хочешь сослаться на определенную часть страницы, а там никаких блоков с id нет.
файрфокс вначале будет ломаться аки целомудренная женщина, но потом спустя годиков 5 таки реализует.Запомните этот твит
Реализовал, даже не через пять!
Есть EPUBCFI (http://www.idpf.org/epub/linking/cfi/epub-cfi.html) как абстракция для выделения фрагмента DOM на странице. Но нет, готовым путем ходить нельзя и надо свой нестандартный выдумать.
book.epub#epubcfi(/6/4[chap01ref]!/4[body01]/10[para05]/3:10)? Пожалуй, нет, спасибо.
"targetText" красота такая же как и API JS-DOM...Еще пусть добавят в урлы document.getElementById() макаки!
Как скажете.
На сколько помню такая технология уже давно была реализована и работала через плагин.
???
а вставить в сылку:
document.body.innerHTML = document.body.innerHTML.replace('слово', '<a name="tmp4325"><font color ="Blue">слово</font></a>');location.href="#tmp4325"?а как они собрались остальные совподения выискивать?
а если слово в середине абзаца во второй колонке таблицы, то форматирование поедит? или буде горизонтальный скрол, чтоб искомое слово поместить в верхний левый угол?
а если оно в скрипте? а если в виде urlcode? а если в титле? а если... там милион "если"!!! это будет та ещё грабля!
нахрена ефективных менеджеров пускают в код/стандарт/всюду...
Для того и пускают. Чтоб не было никаких стандартов, а был гугл хром. Хотя клерки уже и называют его просто "гугл", не отличая понятий "поисковик гугл", "браузер гугл хром", "адресная строка", "поисковая строка" и "сеть интернет". Гугл! Всё!Вот для этого всё и делается. Эффективные менеджеры своё дело знают. Были миллионы сайтов IE-only, теперь будут миллиарды Chrome-only. И с этого слезть уже не получится.
> с этого слезть уже не получится.Если не рыдать о беспощадных корпорациях, а что-нибудь делать, то получится: https://box.matto.nl/revivegopher.html
чукча не читатель:> По сути предложенная опция автоматизирует выполнение операции поиска с прокруткой сразу после открытии страницы
У тебя Ctrl-F ломался? Если нет, не сломается и это.
мндя...
<body onload="...далее по тексту...
судя по замечанию вы менеджер...? :)про ctrl+f - эфективное предложение чтоб html эмулировал нажатие клавиш?
window.find() не о чём не говорит? https://developer.mozilla.org/en-US/docs/Web/API/Window/find
> мндя...
> <body onload="...далее по тексту...
> замечанию вы
> ? :) про
> ctrl+f
> html эмулировалТы можешь внятно описать суть своей претензии? По загрузке страницы браузер возьмет targetText и поведет себя так, словно ты нажал Ctrl-F. Чего не ясно? При чем тут HTML, "менеджер", "эмулировать нажатие", window.find() et cetera? Механизм будет вызываться из C++, а не из "языка программирования HTML", из которого ты там "эмулируешь нажатия клавиш".
Во первых перестанут работать якоря, типа olddos.narod.ru/doc/comp/bsp/v21/ch4.htm#ch4_6, и если в хром внесут поддержку "многоуровневых" #, (типа olddos.narod.ru/doc/comp/bsp/v21/ch4.htm#ch4_6#targetText=0Eh) то это нигде работать более небудет, а просто сломает то, что работало до этого.
Во вторых:
>...страница сдвинется на позицию с первым упоминанием...А если нужен обзац с пятым упоминанием?
В третьих - для того, чтобы "...формировать ссылки на отдельные слова или фразы..." более чем достаточно текущих возможностей html&js, которые отработают в большенстве браузеров. А то хтмл неосилили и полезли си править...
В четвёртых .... дофига ещё чего, начиная от активного использования аякса и заканчивая обилием инструментария показывающего контекст после выполнения каких то действий, типа выподающего окна/меню, сполер, и т.д. и т.п.
>У тебя Ctrl-F ломался?Нет... я не на винде, поэтому сочетания клавиш работают при любой раскладки клавиатуры :)
А сейчас как? Поидее, только js'ом. Так что, с одной стороны - минус один js, хорошо; с другой - опять "сначала впилить, потом стандарт обсудить...", но это так давно.
сейчас надо написать id=xxx в теле страницы. и дернуть браузер за page.html#xxx
> А сейчас как? Поидее, только js'ом.Эх, без ЖСа прям вот жизни не(т и не) было.
% less --version|grep -i copy
Copyright (C) 1984-2017 Mark Nudelmanw3m "https://www.opennet.dev/openforum/vsluhforumID3/116597.html&q... | less -gi +/поидее
w3m "https://www.opennet.dev/openforum/vsluhforumID3/116597.html&q... | less -gi +/id=xxx
https://pic4a.ru/92/gVE.pngПричем, оно все еще продвинутее гугло-фичи -- можно вполне задавать "прокрути сразу до третьего совпадения":
less -gi +/Аноним +3n
:)
Ну так-то оно огого и понятно. w3m, links... А вот в хромозиллах?
А если кто-то уже использовал #targetText=* для чего-то своего то что?
прийдётся переименовывать, или вставлять проверку браузера, то выводить сообщение, что сайт несовместим с хромом :))
эх а могли бы сделать - #!@&TaRgEtTeXt="текст"&@!
хотя это тоже кто-то уже мог использовать ;)
Ждал этой фичи с 94 года. Нет, не преувеличиваю.
а подтянуть джаваскрипт, чтоб осилить создание данного алгоритма? ...или хотябы на форуме вебмакак спросить - наклепали бы, там дел на несколько минут, а вы десятилетия молчеливо тратите в ожидании...
Написать могу. Не могу распространить. Так же, как не могу заставить купить телефон каждого, кому мне может захотеться разок позвонить (близкому человеку, которому надо звонить регулярно, могу подарить, но не все такие близкие). А вот Гугль может. Тим Бернес Ли, наверное, может. Смысл именно в том, чтобы перекинуть ссылку в середину текста человеку, который не будет ради этого ставить мой плагин (который, возможно, вообще не знает, что такое плагины), и к которому я не поеду в гости, чтобы самому его поставить. Для этого, увы, нужно, чтобы кто-нибудь (не я) внедрил эту фичу как доступную всем (ну или хотя бы значительному большинству), а не только специально и явно этого пожелавшим. Есть такие волшебные люди, которые умеют такое, я явно не из них.
Тем временем в Plan 9 текст мог быть интерпретирован как ссылка по усмотрению читателя (а не автора), а текстовые редакторы умели регулярные выражения в качестве адресов. В сумме можно было кликом по выхлопу компилятора переходить к проблемной строчке исходника, или ссылаться на места в тексте типа /lib/rfc/rfc/2229.txt:/Sample.4. Потом, ко всеобщему счастью, настала эра веба и прогресса.
Embrace, Extend, and Extinguish. In Action. Google Edition.