我在我的网站上使用谷歌网站翻译器,它允许用户从下拉列表中选择一个国家/地区。谷歌负责网页翻译。代码如下:
<div id="google_translate_element"></div>
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en'}, 'google_translate_element');
}
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
但是,我想要一种方法让网站检测用户的IP并根据结果自动翻译。
例如,一位只懂法语的用户访问一个显示“Click ME to Translate to French”的网页。不幸的是,法国人无法知道文本内容。所以我非常感谢这里的帮助。
最佳答案
您想要的是地理定位。虽然您可以通过 IP 地址来完成此操作,但 HTML5 提供了 far simpler way :
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
$.getJSON('http://ws.geonames.org/countryCode', {
lat: position.coords.latitude,
lng: position.coords.longitude,
type: 'JSON'
}, function(result) {
alert(result.countryName);
});
});
}
然后您可以按照您的建议根据国家/地区名称进行翻译。另请查看评论中链接的一些帖子。
关于javascript - 自动检测用户 IP 地址的语言并选择谷歌翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53952999/