热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

前端国际化(i18n):基于jQuery的实现与应用

在进行前端JavaScript国际化(i18n)的过程中,为了从cookie中获取语言信息并动态加载相应资源,我决定将语言检测逻辑和i18n初始化代码直接嵌入到index页面中,使用了Velocity模板引擎的语法。这种方法不仅简化了代码结构,还提高了语言切换的灵活性和响应速度。

昨天在做前端js的国际化的时候,因为遇到了需要从COOKIE中获取语言信息再进行资源加载的情况,索性就直接将判断的条件以及i18n的初始化写到了index页面中,这里是velocity的语法。

<script src="$link.contextPath/assets/Javascripts/jquery/jquery.min.js?v=$appUitl.revision">script>
<script src="$link.contextPath/assets/Javascripts/jquery-i18n-properties/jquery.i18n.properties.js?v=$appUitl.revision">script>
#foreach($gc in $request.getCOOKIEs())
#if($gc.value=='zh_CN')
<script src="$link.contextPath/assets/Javascripts/jquery-validation-engine/js/jquery.validationEngine-zh_CN.js?v=$appUitl.revision">script>
<script>
$.i18n.properties({//加载资浏览器语言对应的资源文件
name : 'messages', //资源文件名称
path : '$link.contextPath/i18n/', //资源文件路径
mode : 'map', //用Map的方式使用资源文件中的值
language : 'zh_CN',
});
script>
#elseif($gc.value=='en_US')
<script src="$link.contextPath/assets/Javascripts/jquery-validation-engine/js/jquery.validationEngine-en_US.js?v=$appUitl.revision">script>
<script>
$.i18n.properties({//加载资浏览器语言对应的资源文件
name : 'messages', //资源文件名称
path : '$link.contextPath/i18n/', //资源文件路径
mode : 'map', //用Map的方式使用资源文件中的值
language : 'en_US',
});
script>
#end
#end

其中加载的资源文件为
这里写图片描述
这样就成功了,再在js中通过prop方法调用配置文件中的key值就行了

var message = $.i18n.prop('index.modal.message')

配置文件中

  • messages_en_US.properties
index.modal.message=Choose
  • messages_zh_CN.properties
index.modal.message=请选择项目

大功告成


推荐阅读
  • 本文介绍了多个关于JavaScript的书籍资源、实用工具和编程实例,涵盖从入门到进阶的各个阶段,帮助读者全面提升JavaScript编程能力。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文介绍了如何使用JQuery实现省市二级联动和表单验证。首先,通过change事件监听用户选择的省份,并动态加载对应的城市列表。其次,详细讲解了使用Validation插件进行表单验证的方法,包括内置规则、自定义规则及实时验证功能。 ... [详细]
  • 深入理解Vue.js:从入门到精通
    本文详细介绍了Vue.js的基础知识、安装方法、核心概念及实战案例,帮助开发者全面掌握这一流行的前端框架。 ... [详细]
  • 本文探讨了2019年前端技术的发展趋势,包括工具化、配置化和泛前端化等方面,并提供了详细的学习路线和职业规划建议。 ... [详细]
  • 交互式左右滑动导航菜单设计
    本文介绍了一种使用HTML和JavaScript实现的左右可点击滑动导航菜单的方法,适用于需要展示多个链接或项目的网页布局。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 前言--页数多了以后需要指定到某一页(只做了功能,样式没有细调)html ... [详细]
  • PHP 过滤器详解
    本文深入探讨了 PHP 中的过滤器机制,包括常见的 $_SERVER 变量、filter_has_var() 函数、filter_id() 函数、filter_input() 函数及其数组形式、filter_list() 函数以及 filter_var() 和其数组形式。同时,详细介绍了各种过滤器的用途和用法。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • 配置PHPStudy环境并使用DVWA进行Web安全测试
    本文详细介绍了如何在PHPStudy环境下配置DVWA( Damn Vulnerable Web Application ),并利用该平台进行SQL注入和XSS攻击的练习。通过此过程,读者可以熟悉常见的Web漏洞及其利用方法。 ... [详细]
  • 本文将详细介绍通过CAS(Central Authentication Service)实现单点登录的原理和步骤。CAS由耶鲁大学开发,旨在为多应用系统提供统一的身份认证服务。文中不仅涵盖了CAS的基本架构,还提供了具体的配置实例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 本文详细探讨了在微服务架构中,使用Feign进行远程调用时出现的请求头丢失问题,并提供了具体的解决方案。重点讨论了单线程和异步调用两种场景下的处理方法。 ... [详细]
author-avatar
手丷机用户2515108295
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有