11
votes

jQuery vérifier l'URL actuelle

Nous sommes à la page 'http://site.com/movies/moviename/'

Comment pouvons-nous savoir, existe-t-il / films / dans l'URL actuelle (directement après la racine du site)?


code devrait donner:

True pour 'http://site.com/movies/moviename/'

et false pour 'http://site.com/person/brad-pitt/movies/'


merci.


0 commentaires

4 Réponses :


2
votes

Il n'y a rien dans JQuery que vous utilisez pour cela, c'est un jour simple.

if (/\/\/[^\/]+\/movies\//.test(window.location.href)) {
  // inside the movies folder
}


0 commentaires

2
votes

Manipulation de chaîne de base ...

function isValidPath(str, path) {
  str = str.substring(str.indexOf('://') + 3);
  str = str.substring(str.indexOf('/') + 1);
  return (str.indexOf(path) == 0);
}

var url = 'http://site.com/movies/moviename/'; // Use location.href for current
alert(isValidPath(url, 'movies'));

url = 'http://site.com/person/brad-pitt/movies/';
alert(isValidPath(url, 'movies'));


7 commentaires

S'il vous plaît expliquer ce qui est 'str' et "chemin".


Peut-il prendre l'URL actuelle elle-même?


En fait, je cherche une solution «vraie: FALSE '»


@Happy c'est une solution vraie / fausse. De quoi parles-tu? La fonction renvoie true ou false selon que l'URL est transmise aura le chemin donné après ".com /"


Dans cette solution, STR est l'URL et le chemin est ce que vous voulez rechercher (films). Il retournera true si les films sont directement après la racine du site, Faux sinon. Cela fonctionnera, mais est légèrement plus convolué que d'autres solutions données.


@JungleFreak légèrement convolué, oui, mais c'est le plus flexible. Et, comment peut-être peut-être ... Nous parlons de deux sous-chaînes ici.


@JOSH STODOLA: C'est pourquoi j'ai dit simplement "légèrement plus compliqué" et j'ai voté. :)



15
votes

Vous pouvez essayer la chaîne index de méthode: xxx


0 commentaires

1
votes

Vous devriez regarder l'analyseur JQuery-URL -

http://github.com/allmarkedup/jquery-url-parser


0 commentaires