JavaScript / jQuery – 获取文本并进行翻译

是否可以使用jQuery从元素中获取文本并将其转换为其他语言?

之前

Hello

 

bonjour

使用Google翻译API。 使用方便。 以下将西class牙语翻译成英语。 要翻译和翻译其他语言,只需更改'es''en'

 google.load("language", "1"); function initialize() { var content = document.getElementById('content'); content.innerHTML = '
Hola, me alegro mucho de verte.<\/div>
'; var text = document.getElementById("text").innerHTML; google.language.translate(text, 'es', 'en', function(result) { var translated = document.getElementById("translation"); if (result.translation) { translated.innerHTML = result.translation; } }); } google.setOnLoadCallback(initialize);

查看http://jsfiddle.net/wJ2QP/1/上的工作示例

使用这个JQuery插件http://www.openxrest.com/translatejs

1 – 将“trn”类包含在要翻译的文本中:

 text to translate 

2 – 定义字典:

 var dict = { "text to translate": { pt: "texto para traduzir" }, "Download plugin": { pt: "Descarregar plugin", en: "Download plugin" } } 

3 – 翻译整个页面正文:

 var translator = $('body').translate({lang: "en", t: dict}); //use English 

4 – 换成另一种语言:

 translator.lang("pt"); //change to Portuguese 

尝试谷歌翻译: http : //code.google.com/apis/language/translate/overview.html

使用Bing翻译,因为免费的Google Translate API已于2011年12月1日停止使用

您可以使用Google Translate的Javascript API。

 

Hello

您需要在页面的HEAD部分加载js库才能使用API​​。

在这个PHP / JS解决方案中,您应该使用包含PHP语言文件在会话/ cookie设置语言而不是$ _GET。 为了简单起见,我会在上面做

index.php文件

     ....................  ....................    

JS文件

 $(function() { $("#scan_result").on('change', function(){ //check number $.ajax({ url: "check.php", dataType: "json", type: "post", data: {'scan_no': scan_value} , success: function (response) { if (response.status == true){ alert("Scan no. " + response.scan_no + $.lang_scan.found_js); }else{ alert("Scan no. " + response.scan_no + $.lang_scan.not_found_js); } }, error: function(jqXHR, textStatus, errorThrown) { //ajax error alert($.lang_scan.error_js); } }); }); }); 

check.php返回一个json

 {"scan_no": "123", "status": true/false} 

为什么不试试这个:

 var body = $("body"); var html = body.html(); var nhtml = html.split(" "); var dict = []; for (var i = 0; i < nhtml.length; i++) { nhtml[i].replace(dict[index]); } 

它可以取代任何东西。