jq项目国际化处理,无需刷新页面、修改链接即可实现多种语言切换,切换效果拼图:
JS变量调用方法,JS需JQ库(任意版本jquery、jquery.i18n.properties)
// i18n翻译核心调用方法,完整见文章底部Github链接var i18nLanguage = 'zh_CN';jQuery.i18n.properties({name : 'messages', //资源文件前缀path : 'i18n/',//资源文件路径mode : 'map', //用Map的方式使用资源文件中的值language : i18nLanguage,callback : function() {//加载成功后设置显示内容//可自定义键名匹配方法var insertEle = $(".i18n");console.log(".i18n 写入中...");insertEle.each(function() {// 根据i18n元素的 name 获取内容写入$(this).html($.i18n.prop($(this).attr('name')));});console.log("写入完毕");console.log(".i18n-input 写入中...");var insertInputEle = $(".i18n-input");insertInputEle.each(function() {var selectAttr = $(this).attr('selectattr');if (!selectAttr) {selectAttr = "value";};$(this).attr(selectAttr, $.i18n.prop($(this).attr('selectname')));});console.log("写入完毕");//js中变量调用的方法,user.home为自己配置的内容console.log($.i18n.prop('user.home'));}})
HTML使用方法键名匹配方法,完整demo见文章底部Github链接
<!-- 普通标签用法 class + name --><div class="i18n" name="user.home"></div><div class="i18n" name="user.contact"></div><!-- input用法 class + selectname + selectattr--><input type="text" class="i18n-input" selectname="input.name" selectattr="placeholder" name="name" /><br> <textarea class="i18n-input" selectname="input.message" selectattr="placeholder"></textarea><br><button class="submit_bt i18n" name="input.submit"></button>
资源文件格式
user.home=首页user.contact=联系我们input.name=姓名input.phone=联系方式input.message=留言input.submit=提交
文件结构路径
作者:zzppff
Github链接:/zzppff/jq-kiwi
本方法为部分原创方法,经作者多方收集JQ国际化解决方案整理修改后发布,商业转载请联系作者获得授权,非商业转载请注明出处。
如有其它问题,可联系公众号: