如何设置自动识别浏览器语言,跳转到相关版本的网站?
当需要根据浏览器的语言偏好进行跳转时,可以使用 JavaScript 的 navigator.language
属性获取浏览器的语言信息,然后根据不同的语言进行跳转。
我们通过 JavaScript 对根据国家代码进行逻辑判断并实现跳转功能。针对中国用户不进行跳转,对日本用户进行特定域名跳转,对其他国家用户进行默认域名跳转。同时,我们使用了 hasVisited
cookie 作为标识,只在首次访问时进行跳转。
// 检查Cookie是否存在
function checkCookie(name) {
var match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));
if (match) {
return match[2];
}
return null;
}
// 设置Cookie
function setCookie(name, value, days) {
var expires = "";
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toUTCString();
}
document.cookie = name + "=" + value + expires + "; path=/";
}
// 获取浏览器语言并进行相应的跳转
function redirectBasedOnLanguage() {
var language = navigator.language.split('-')[0]; // 获取浏览器语言
switch (language) {
case 'ja': // 日语 - 日本
setCookie('hasVisited', 'true', 365); // 设置一个标志性的Cookie,表示已经访问过
window.location.href = "https://jp.shopaii.com";
break;
case 'zh': // 中文 - 中国
setCookie('hasVisited', 'true', 365);
break;
default:
if (!checkCookie('hasVisited')) {
setCookie('hasVisited', 'true', 365);
window.location.href = "https://en.shopaii.com";
}
break;
}
}
redirectBasedOnLanguage();