При работе над коммерческими проектами мне не раз попадались ситуации, когда заказчику нужно было сделать ссылку на внешний сайт и сразу прокрутить к нужному фрагменту текста. Естественно просить админа стороннего сайта добавить якорь на свою страницу чтобы я потом ссылался на него не вариант)
Тут на помощь приходит Text Fragment API. С его помощью можно прокрутить страницу к нужной фразе, даже если на ней нет якоря. Достаточно использовать ссылку формата:
https://site.com#:~:text=текст%20который%20ищемВажно: пробелы заменяем на %20
При переходе по такой ссылке браузер загрузит страницу и автоматически прокрутит к указанной фразе, выделив её цветом. Это не полноценный якорь, но отличная альтернатива, когда других вариантов нет.
Пример такой ссылкиОграничений у такого способа конечно много и о них ниже:
- Не работает в Safari и Firefox.
- Может не сработать, если текст разбит на части. Например по тегам (<span>, <b> и т. п.).
- Браузер ищет первое совпадение, даже если есть другие фрагменты с тем же текстом.
- Некоторые сайты отключают поддержку Text Fragment API через Content-Security-Policy.
Если же сайт сделан на Tilda, всё проще: достаточно узнать ID нужного блока и указать ссылку такого вида:
https://site.com/#rec00000000