У меня есть случай, когда я устанавливаю фокус страницы на определенный элемент (с привязкой перед ним). Когда пользователь не вошел в систему, происходит перенаправление на страницу входа, и после входа пользователь перенаправляется на соответствующую страницу с закодированным URL-адресом.
Я вижу, что URL-адрес ссылки # target работает как положено (фокусируется на элементе), а URL-ссылка% 23target - кодированная ссылка. Это ожидаемое поведение?
Редактировать: Если это ожидаемое поведение, есть ли обходной путь, чтобы сосредоточиться на цели? Как в обход URL закодировать?
Изменить добавить больше информации:
Предполагая, что есть код
page1.html
... html before the anchor ...
<a name="test">Some code</a>
... html after the anchor ...
Я захожу на страницу как page1.html% 23test. Это не работает так же, как page1.html # test. Есть ли метод jQuery для реализации этого? Содержит ли location.hash тест даже после того, как он был закодирован по URL? У меня нет контроля над изменением кодировки URL.
Редактировать:
Поскольку я знал, на какой якорь я хотел перейти после перенаправления страницы, я сделал
window.location.hash = namedAnchor
чтобы решить проблему. Эта строка JS выводится, только если клиент успешно вошел в систему. Решил мою проблему, но не общий ответ, который я искал. Я искал способ избежать экранирования # в url encode.