2010-03-04 73 views
9

基本上需要在JS中生成自定义(有些不同然后是的)messeges(alert),如何处理翻译呢?翻译在JS?

+1

你的意思是说,从英语翻译成西班牙语? – Jason 2010-03-04 06:17:15

+0

好吧,我们可以说我们有一些警告显示像“你真的要删除这个项目”,什么是干燥和高效的方式来处理它在多语言网站? – simple 2010-03-04 06:32:38

+0

您是否已经在使用现有的JavaScript库?他们中的许多人已经有一些做本地化的方式。 – Annie 2010-03-04 06:58:54

回答

19

普莱舍看看jQuery-i18n翻译插件

var my_dictionary = { 
    "some text" : "a translation", 
    "some more text" : "another translation" 
} 
$.i18n.load(my_dictionary); 


$('div#example').text($.i18n._('some text')); 

而且jQuery localisation

$.localise('js/greeting'); 
$('#greeting').val(greeting); 
$('#languages').val($.localise.defaultLanguage); 
$('#changeLocale').change(function() { 
    var newLang = $(this).val(); 
    $.localise('js/greeting', {language: newLang, loadBase: true}); 
    $('#greeting').val(greeting); 
    $('#languages').val(newLang); 
}); 

或者,如果你真的想不是寻找数据的详细转换,尝试google translate api

google.language.translate("Hello world", "en", "es", function(result) { 
    if (!result.error) { 
    var container = document.getElementById("translation"); 
    container.innerHTML = result.translation; 
    } 
}); 
+1

+1哇! – 2010-03-04 07:32:03

2

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

1 - 包括 “万亿” 级的文本要翻译:

<span class="trn">text to translate</span> 

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