Привет! Есть проблема: если пост ссылается на сам себя через короткую ссылку с якорем (/t/id#anchor) и на эту ссылку кликают на той же странице, происходит переход в начало страницы, а не к якорю.
Это проще показать на примере:
Заголовок 1
- #header-1 работает при переключении в этой теме
- https://meta.discourse.org/t/t-xyz-anchor-doesnt-work-when-on-the-page-xyz/225101#header-1-1 работает при переключении в этой теме и цитировании
- https://meta.discourse.org/t/a/225101#header-1-1 работает при переключении в этой теме и цитировании
- https://meta.discourse.org/t/225101#header-1-1 работает при переключении не в этой теме
- /t/t-xyz-anchor-doesnt-work-when-on-the-page-xyz/225101#header-1-1 работает при переключении в этой теме и цитировании
- /t/a/225101#header-1-1 работает при переключении в этой теме и цитировании
- /t/225101#header-1-1 работает при переключении не в этой теме
Также я заметил ещё две проблемы. Все ссылки, кроме первой, перезагружают страницу. Ссылки 2, 3, 5 и 6 работают, но якорь в URL исчезает через короткое время.
Моя первоначальная проблема заключалась в том, что при цитировании поста, содержащего ссылку только с якорем (ссылку на другой раздел той же страницы), якорь становился относительным текущей странице, а не странице цитаты. Если процитировать семь ссылок, первая ссылка приведёт к ТЕКУЩАЯ_СТРАНИЦА#header-1.
Я попробовал решение из этого отчёта об ошибке (прикреплено ниже). Оно правильно ссылалось на страницу, однако якорь не учитывался.