根据某些语言显示div

时间:2014-05-01 16:10:37

标签: javascript jquery

我的网站上有一个西班牙语翻译按钮,我只想在浏览器语言设置为'

时显示该按钮

我有javascript检测这样的语言

<script type="text/javascript">
var userLang = navigator.language || navigator.userLanguage;
alert("The language is: " + userLang);
if (userLang = "es") {
    $("#google_translate_element").show();
}
else {
    alert("English");
    $("#google_translate_element").hide();
}
</script>

无论我的浏览器设置了什么语言,它都会显示。我做错了什么?

2 个答案:

答案 0 :(得分:2)

=用于分配。为了进行比较,您需要使用==。如果您还要比较变量的type,请使用===

var userLang = navigator.language || navigator.userLanguage;
alert("The language is: " + userLang);
if (userLang === "es") {
    $("#google_translate_element").show();
}
else {
    alert("English");
    $("#google_translate_element").hide();
}

您可以从 MDN docs

了解有关表达式和运算符的更多信息

答案 1 :(得分:0)

更通用的解决方案:

一些JavaScript:

var lang = navigator.language || navigator.userLanguage;

document.documentElement.className = "lang-" + lang;

这会为您提供<html class="lang-(en|es)">

现在,您需要根据语言做一些特殊的事情,您可以使用CSS:

#google_translate_element {
    display: none;
}

.lang-es #google_translate_element {
    display: block;
}