我试图重定向英语浏览器xyz.com/?lang=en
,同时让那些瑞典留在xyz.com
双语言的浏览器重定向的Javascript
我一直在努力:
var type=navigator.appName
if (type=="Netscape")
var lang = navigator.language
else
var lang = navigator.userLanguage
//cut down to first 2 chars of country code
var lang = lang.substr(0,2)
// Swedish
if (lang == "sv")
window.location.replace('????')
// if none of above (default to English or any other)
else
window.location.replace('xyz.com/?lang=en')
</script>
但我不知道该怎么写瑞典的URL,因为它不是重定向,因为默认语言是瑞典语......编写xyz.com
让我进入重定向循环
if ($_REQUEST["lang"] == "en")
{
echo '<div class="langlight"><a href="http://xyz.com/">Svenska</a></div>';
}
else
{
echo '<div class="langbold"><a href="http://xyz.com/">Svenska</a></div>';
}
if ($_REQUEST["lang"] == "en")
{
echo '<div class="langbold"><a href="http://xyz.com/">English</a></div>';
}
else
{
echo '<div class="langlight"><a href="xyz.com/">English</a></div>';
}
enter code here
为什么在瑞典的情况下不做任何事情?只是在英语时做重定向,而在瑞典语时不做任何事情。 –
检测浏览器语言的正确方法是检查服务器端的[接受语言HTTP标头](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4)。客户端语言检测具有跨浏览器问题,有时仅检测已安装的语言(而不是首选语言) – hugomg
,因为所有瑞典语浏览器都有英语作为辅助语言,可重定向它们 – user1046583