J'ai un cas d'utilisation où je mets le focus de page sur un élément particulier (ayant une ancre avant). Lorsqu'un utilisateur n'est pas connecté, il y a une redirection vers la page de connexion et après s'être connecté, l'utilisateur est redirigé vers la page en question, avec l'URL encodée.Liens et ancres codés HTML
Je vois qu'une URL du formulaire link # target fonctionne comme prévu (en se concentrant sur l'élément) alors que le lien du lien codé par l'URL% 23target ne fonctionne pas. Est-ce que ce comportement est attendu? Editer: Si c'est le comportement attendu, y a-t-il un moyen de se concentrer sur la cible? Comme dans, un moyen d'encoder url?
Modifier l'ajout de plus d'informations:
Si l'on suppose qu'il ya un code
page1.html
... html before the anchor ...
<a name="test">Some code</a>
... html after the anchor ...
J'accède à la page page1.html% 23test. Cela ne fonctionne pas de la même manière que page1.html # test. Existe-t-il une méthode jQuery pour implémenter ceci? Est-ce que location.hash contiendrait un test même après avoir été encodé en url? Je n'ai aucun contrôle sur la modification de l'encodage de l'URL.
Edit:
Comme je savais que son nom l'ancre que je voulais aller à la page après est redirigé, je fait un
window.location.hash = namedAnchor
pour résoudre le problème. Cette ligne JS est sortie uniquement si un client est connecté avec succès. Résolu mon problème, mais pas la réponse générique que je cherchais. Je cherchais un moyen d'éviter d'échapper # dans l'encodage url.
Merci! Cela a répondu à une partie de ma question au moins. Comme dans, quel serait le comportement lorsque # est encodé en url. – Arvind