今天暫停一下之前的學(xué)習(xí)。讓我來研究一下國(guó)際化這個(gè)東西。雖然AEM有自己的方式。但是我不知道。。。
先用jQuery? 和 xml 映射來解決一下吧。(不知道為什么只能在edge上使用。。。)吐槽一下,JavaScript的語法好混亂。
xml:

js:
(function($){
$.fn.cloudLang =function(params){
var defaults = {
file:'lang-example.xml',
? ? ? ? lang:'en'
? ? ? }
var aTexts =new Array();
? ? ? if(params) $.extend(defaults, params);
? ? ? $.ajax({
type:"GET",
? ? ? ? ? ? url: defaults.file,
? ? ? ? ? ? dataType:"xml",
? ? ? ? ? ? success:function(xml)
{
$(xml).find('text').each(function()
{
var textId = $(this).attr("id");
? ? ? ? ? ? ? ? ? ? ? ? ? ? var text = $(this).find(defaults.lang).text();
? ? ? ? ? ? ? ? ? ? ? ? aTexts[textId] = text;
? ? ? ? ? ? ? ? ? ? });
? ? ? ? ? ? ? ? ? ? $.each($("*"), function(i,item)
{
//alert($(item).attr("langtag"));
? ? ? ? ? ? ? ? ? ? ? ? if($(item).attr("langtag") !=null)
$(item).fadeOut(150).fadeIn(150).text(aTexts[$(item).attr("langtag")]);
? ? ? ? ? ? ? ? ? ? });
? ? ? ? ? ? ? ? ? ? }
});
? };
})(jQuery);
$(document).ready(function(){
$("#lang-en").click(function(){
$("body").cloudLang({lang:"en", file:"lang-example.xml"});
? ? ? });
? ? ? $("#langzh").click(function(){
$("body").cloudLang({lang:"zh", file:"lang-example.xml"});
? ? ? });
? });
html:
