ページフォーカスを特定の要素に設定している(その前にアンカーがある)ユースケースがあります。ユーザーがサインインしていない場合、ログインページへのリダイレクトがあり、サインインした後、ユーザーはURLエンコードされた問題のページにリダイレクトされます。
link#targetという形式のURLは(要素に焦点を合わせて)期待どおりに機能しますが、URLエンコードされたリンクlink%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エンコードで#がエスケープされないようにする方法を探していました。