2010-03-04 72 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