Je souhaite réaliser en JavaScript un test sur l'URL de ma page et effectuer diverses actions en fonction de celle-ci.
Prenons un exemple pour préciser un peu:
Si mon url de base est http://127.0.0.1/, je souhaite pour différentes pages située dans l'arborescence de ce serveur, vérifier si je suis dans:
- /blog/ (http://127.0.0.1/blog/) ou
- /galerie/ (http://127.0.0.1/galerie) ou
- /etc/ (http://127.0.0.1/etc/)
Cela semble assez simple jusque là, mais la difficulté qui me bloque arrive. Il faut aussi prendre en compte les chemins inférieurs...
En gros si j'ai:
http://127.0.0.1/blog/post/blablabla/... j'aimerais savoir que je suis dans "/blog/" (les chemins inférieurs ne m'intéressant pas)
Ce qui reviendrait à faire une sorte de:
if (document.location == BaseUrl+"/blog/"+.*) {
alert("dans le blog")
}
Des idées? (je suis nul en RegExp...)
Merci d'avance.
# Je réponds à moi même
Posté par pampryl . Évalué à 4.
var path = document.location.pathname
var area = path.split("/")[1];
if (area == "blog") {
alert ("blog");
} else {
alert ("pas blog");
}
Reste à voir si ça ne souffre d'aucune limitation... mais ça devrait me permettre d'avancer.
Merci à moi donc ;-) et à ceux qui s'apprêtaient à répondre ou l'auraient fait si ils avaient eu le temps :)
[^] # Re: Je réponds à moi même
Posté par yellowiscool . Évalué à 1.
Enfin, ça marche, si tu cherches pas à faire le mieux possible, c'est le principal.
Envoyé depuis mon lapin.
[^] # Re: Je réponds à moi même
Posté par pampryl . Évalué à 2.
# avec regexp
Posté par s[e]th & h[o]lth (site web personnel) . Évalué à 2.
alert(("" + document.location).match(new RegExp( "/([^/]+)", "gi" )));
Sachant que la fonction te renverra un tableau ou le premier élément est "/adresse_du_serveur_" et le deuxième est ce que tu recherches (par exemple "/blog" ou "/galerie").
Toutefois, je ne connais pas les tenants et aboutissants d'un tel questionnement mais de manière générale, pour plus de sécurité, c'est au code côté serveur de te donner ce genre d'information (ie dans quelle partie du site je me trouve ?) plutôt qu'au code côté client.
Voilà !
[^] # Re: avec regexp
Posté par pampryl . Évalué à 2.
je vais regarder ce que tu proposes et voir si c'est plus efficace que la solution que je citais plus haut.
Sinon, pour le contexte, c'est pour une gestion d'onglets... je cherche juste dans qu'elle partie du site je me trouve afin de mettre en surbrillance l'onglet en question. (ce n'est peut être pas là non plus la solution ultime)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.