URL actuelle sans paramètres, hachage, http(s)://
Je suis à la recherche d'un moyen sympa de faire de l'URL du document courant en Javascript.
- L'URL doit être propre de paramètres (?paramètre1=bla¶mètre2=bla)
- L'URL doit être propre de balises de hachage (#jumppoint)
- http/https doit être supprimée/consolidés en http
Je sais que je peux obtenir l'URL de l'emplacement.href puis utiliser certaines expressions régulières pour le nettoyer, mais peut-être qu'il est plus agréable/solution de nettoyage pour se débarrasser de la malbouffe?
- Je suis tenté de downvote juste pour la convocation des parties importantes de l'url "indésirable"!
- L'Importance est subjective. Il est tout à fait plausible que, dans le cadre de cette fonction, l'hôte est la partie pertinente.
- ptorocol peut être ftp: ainsi, avez-vous besoin de l'examiner?
Vous devez vous connecter pour publier un commentaire.
Il y a beaucoup d'autres paramètres que la
href
danswindow.location
. Voir la référence complète ici: https://developer.mozilla.org/en/DOM/window.locationCe que vous cherchez comme un démarreur peut être le
window.location.hostname
:À partir de l'exemple d'URL
http://[www.example.com]:80/search?q=devmo#test
le nom de domaine serawww.example.com
.Si vous aussi vous souhaitez inclure le chemin d'accès et la force d'un protocole http://, essayez:
Comme une note de côté, un truc astucieux pour obtenir les mêmes paramètres à partir d'un autre URL de la fenêtre.l'emplacement est de créer un vide d'ancrage:
'http://' + window.location.hostname + window.location.pathname;
vous avez oublié le portAucune des réponses données se pencher sur le fait que le protocole http ou https pour la Fpo titre. Pour tenir compte de ce que je vous suggère:
La L'emplacement de l'objet obtenu ce que vous avez besoin
Vous avez
document.location
objet, donc:Vous pouvez utiliser ces fonctions de remplacement pour supprimer le hachage et des arguments de recherche et de normaliser le protocole https pour http:
Ou, si tout ce que vous voulez vraiment est le domaine et le chemin d'accès, vous pouvez utiliser seulement ceci:
S'il vous plaît essayez de cet extrait:
JS:
window.location.origin = window.location.protocol + "//" + (window.location.port ? ':' + window.location.port : '') + '/' + window.location.hostname;
Cette page indique que vous pourriez probablement utiliser
window.location.host
pour obtenir la pièce que vous êtes réellement intéressé. Je n'ai pas testé, mais.Essayer: