2018-04-20 国际化

今天暂停一下之前的学习。让我来研究一下国际化这个东西。虽然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:


你可能感兴趣的:(2018-04-20 国际化)