J'espère que vous serez en mesure de m'aider avec mon problème. J'ai 3 langues sur mon site html statique. Je souhaite rediriger un utilisateur en fonction des paramètres de langue de son navigateur.La redirection javascript multilangue statique continue de recharger une page
Ceci est mon code:
var lang = navigator.language;
if (lang == 'pl'){
document.location.href = 'index_pl.html';
}
else if (lang == 'fr'){
document.location.href = 'index_fr.html';
}
else {
document.location.href = 'index.html';
}
alert(lang);
Le problème est chaque fois l'utilisateur entrera dans le site ce script conserve rafraîchissant/rediriger un site. Ma question est de savoir comment vérifier le navigateur de l'utilisateur une fois, puis rediriger l'utilisateur vers une page Web dédiée.
Merci d'avance.
Merci pour votre réponse. Tous les fichiers sont dans le répertoire racine et le code ci-dessus vérifie quelle est la langue du navigateur de l'utilisateur et, sur la base de ces informations, redirige vers une page spécifique. Une fois l'utilisateur redirigé, la scipt vérifie à nouveau la langue de l'utilisateur. (boucle infinie). Peut-être que je devrais ajouter quelque chose à l'url après la première redirection ou peut-être utiliser localstorage? – Kamil
Vous pouvez utiliser localstorage ou des cookies si vous voulez stocker ce que l'option était, mais vous ne devriez pas avoir besoin de. Si c'est encore rediriger, quelque chose ne correspond pas à la vérification du chemin. Commentez le document.location.href et le résultat (alert ou console.log) ce qu'il montre. Par exemple: alert (document.location.path + "! = /" + RedirectURL) – fanfavorite
renvoie Undefinded! = /index_pl.html Mais tous les fichiers sont dans le même répertoire racine – Kamil