# jquery.i18n
**Repository Path**: fulusco/jquery.i18n
## Basic Information
- **Project Name**: jquery.i18n
- **Description**: jquery 国际化插件 i18n 基于 https://github.com/T-baby/jquery.i18n
- **Primary Language**: JavaScript
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 1
- **Created**: 2018-03-01
- **Last Updated**: 2025-03-02
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 现阶段不在更新该插件,转为使用JavaScript版国际化插件 https://gitee.com/minus16/i18n.js
#### 如果有什么bug可以联系,或提交 [Issues](https://gitee.com/fulusco/jquery.i18n/issues)
# jquery.i18n.js
---
一个基于jQuery的轻量级的国际化(i18n)插件。
- 支持根据设置默认语言
- 支持切换语言
- 支持使用json文件存储翻译内容
- 如有其它需求可提 Issues
可以根据用户自定义的不同语言版本的json文件,按需渲染网页上的语言,实现国际化。
## 安装
在项目中先引入jQuery文件:
```JS
```
然后在jQuery之后引入jquery.i18n.js:
```JS
```
## 使用方法
> 注意!请在服务器端运行该程序。因为 XMLHttpRequest cannot load file:xxx.
首先在项目中新建 `i18n` 文件夹,在此文件夹下放置不同语言版本的 `i18n_xx.json` 语言文件。(您也可以自定义文件名的开头和结尾如BaiduCnLang.js,下面的示例中以i18n_为文件名开头)
在需要使用国际化功能的DOM结构处引入i18n属性(i18n中的value为语言文件中key,可自定义):
```HTML
multi-language
internationalization
```
接着只需在语言文件中增加内容。
例如中文版的语言文件命名为 `i18n_cn.json`,英文版的语言文件命名为 `i18n_en.json`:
`i18n_cn.json`:
```
{
"i18n.test": "多语言",
"i18n.test2": "国际化"
}
```
与之对应的翻译文件 `i18n_en.json`:
```
{
"i18n.test": "multi-language",
"i18n.test2": "internationalization"
}
```
最后在脚本中执行如下方法,初始化该插件。
```JS
var lang = $("[i18n]").i18n({
defaultLang: "en",
filePath: "/i18n/", //注意!要配置好语言文件的正确路径
filePrefix: "i18n_",
fileSuffix: "",
forever: true,
get:true,// 开启lang.get("i18n.test") 方法的开关。默认为false关闭状态,lang为null
callback: function() {
}
});
// 当开启了get=true后,也可以使用window.I18n.get("key"), 如果配置了多个$("[i18n]").i18n({}),则window.I18n的值是最新的一个
```
## 配置
#### defaultLang
```JS
defaultLang: defaultLang,
```
默认语言名称,插件会自动将 `filePrefix`+`defaultLang`+`fileSuffix` 拼接在一起作为语言文件文件名。
#### filePath
```JS
filePath: "/i18n/",
```
该参数指定了语言文件所在文件夹在项目中的位置。
#### filePrefix
```JS
filePrefix: "i18n_",
```
该参数指定了语言文件的命名的前缀。
#### fileSuffix
```JS
fileSuffix: "",
```
该参数指定了语言文件的命名的后缀。
#### callback
```javascript
callback:function(){
//do something
}
```
## i18nOnly
默认会将HTML元素的placeholder、value、html一起进行翻译替换,如果您只需要替换其中一个,可以在HTML标签中声明 `i18nOnly` 属性。
```html
```
## 基于 https://github.com/T-baby/jquery.i18n