Javascript 自动语言选择并允许手动语言切换

Javascript 自动语言选择并允许手动语言切换,javascript,html,redirect,Javascript,Html,Redirect,如果浏览器lang不是我的母语,我想将我的静态网页重定向到它的翻译版本,这并不难做到,但它有一个小问题 如果有人在另一个国家的网吧里浏览网页怎么办。然后,即使我手动点击了一个应该链接到我喜欢的语言的链接,页面也会不断地重定向到lets say英语版 那么,如果用户对自动选择的语言不满意,我如何允许他们选择自己的语言呢 我这样做了自动选择 <script type="text/javascript"> var userLang = navigator.language || navi

如果浏览器lang不是我的母语,我想将我的静态网页重定向到它的翻译版本,这并不难做到,但它有一个小问题

如果有人在另一个国家的网吧里浏览网页怎么办。然后,即使我手动点击了一个应该链接到我喜欢的语言的链接,页面也会不断地重定向到lets say英语版

那么,如果用户对自动选择的语言不满意,我如何允许他们选择自己的语言呢

我这样做了自动选择

<script type="text/javascript">
 var userLang = navigator.language || navigator.userLanguage;
 if(userLang != "hu" || userLang != "hu-HU"){
   window.location.replace("http://localhost/testsite/en/");
 }
 </script>

var userLang=navigator.language | | navigator.userLanguage;
if(userLang!=“hu”| userLang!=“hu hu”){
window.location.replace(“http://localhost/testsite/en/");
}

那代码看起来很不错!您应该使用alert(什么语言?)提示用户输入另一种语言

您应该使用某种存储,如Cookie或localStorage。

默认情况下,网站应首先将您发送到翻译版本,但当他们切换到其他语言的页面时,您应将其保存在localStorage中

从本地存储获取值:

var value = localStorage.{your localstorage name};
在本地存储中设置值

localStorage.{your localstorage name} = {your value};

比如说,当用户决定查看网站的英文版本时,他们单击一个链接,javascript将值设置为英语,当您到达原始页面时,它将检查值,如果是英语:什么也不做,如果未设置或是其他内容:转到另一页。

我考虑使用referer,因为理论上,开关只能来自我的域,如果我们也算上本地语言,则只有两个或三个不同的语言。我可能把事情搞砸了,因为如果这样做了,即使我的浏览器设置为我的本地语言,它也会重定向。我不想这样做,因为有一个链接可以在语言之间切换,所以为什么要强迫用户选择呢?你可以在那里放一些ruby代码。在ruby中,这很容易。您只需要在ruby中编写:var=gets.chomp。这将提示用户输入