我試圖重定向英語瀏覽器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