选择"自动"谷歌翻译小工具的版本,我希望不会看到"选择语言"如果我的浏览器与网站的语言相同,则下拉列表。但是,无论我将html lang属性设置为什么,或者我将浏览器首选语言设置为什么,我都会一直看到它。我也注意到,对于meta" google-translate-customization"而言,它似乎没有任何区别。标签是否存在,小部件始终在视图中。
如果用户浏览器未设置为英语,我希望该网站可以翻译。
任何建议都将受到赞赏。
使用的代码: -
在头上: -
<meta name="google-translate-customization" content="6bb255d109276506-b73cb06230e6b6c0-gbb2acb9bc95b4a11-12"></meta>
身体: -
<div id="google_translate_element"></div>
<script>
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.FloatPosition.TOP_LEFT}, 'google_translate_element');
}
</script>
<script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
答案 0 :(得分:3)
你可以尝试这个小的jquery脚本:
var userLang = navigator.language || navigator.userLanguage;
if(userLang == "en"){
$("#google_translate_element").css(["display", "none"]);
}
不确定 if 是否正确我使用荷兰语浏览器并将nl显示为userLang。我很确定英文版应该命名为en。否则,您必须提醒userlang并将其更改为。
alert(userLang);
继承人jsfiddle:http://jsfiddle.net/u950mwom/1/
答案 1 :(得分:0)
最后解决了这个问题(这是google中一个长期存在的错误)。下面的代码隐藏了英文页面上英语用户的语言选择下拉框。它还与en-US
和更新的浏览器等区域设置相关联。
<div id="google_translate_element"></div>
<script type="text/javascript">
var userLang = navigator.language || navigator.userLanguage || navigator.languages;
if (userLang.substr(0,2) != "en"){
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en', layout:
google.translate.TranslateElement.FloatPosition.TOP_LEFT}, 'google_translate_element');
}
}
else {
document.getElementById("google_translate_element").style.display="none";
}
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>