jquery.i18n 网站呈现各国语言
在做网站的时候可能会遇到不同语言切换的问题,实现的方法有很多种,本篇文章按照 js 加载的方法的来实现。
应用到的 js 文件:
jquery.i18n.properties.js
jquery.js
具体繁琐的功能就不一一介绍实现了,下面做一个简单的案例。
文件目录如下:

strings_zh.properties 文件内容:
title = i18n 案例 lang_demo = 这是一个 i18n demo lang_btn = 点击切换 li_lang1 = 一
li_lang2 = 二
li_lang3 = 三
strings_en.properties 文件内容:
title = i18n demo lang_demo = This is a i18n demo lang_btn = Change click li_lang1 = one
li_lang2 = two
li_lang3 = three
index.html 文件内容:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>i18n 案例</title>
</head>
<body>
<div>
<p data-lang="lang_demo">这是一个 i18n demo</p>
<button data-lang="lang_btn" onclick="changeClick()">点击切换</button>
<ul>
<li data-lang="li_lang1">一</li>
<li data-lang="li_lang2">二</li>
<li data-lang="li_lang3">三</li>
</ul>
</div>
<script src="js/jquery-1.11.3.min.js"></script>
<script src="js/jquery.i18n.properties-1.0.9.js"></script>
<script>
let lang = "zh"; function changeClick() {
if (lang === "zh") {
lang = "en"
} else {
lang = "zh"
}
jQuery.i18n.properties({//加载资浏览器语言对应的资源文件
name: 'strings', //资源文件名称
path: 'language/', //资源文件路径
language: lang,
cache: false,
mode: 'map', //用Map的方式使用资源文件中的值
callback: function () {//加载成功后设置显示内容
for (let i in $.i18n.map) {
$('[data-lang="' + i + '"]').text($.i18n.map[i]);
}
document.title = $.i18n.map['title'];
}
});
} </script>
</body>
</html>
我们根据在标签内添加 data-lang=" " 标签来与 strings_zh.properties 和 strings_en.properties 文件内的键值配对,然后通过点击 button 按钮来切换 lang 值,也就是达到中英切换。运行结果如下:
1、页面加载完成:

2、button 按钮点击后:



jquery.i18n 网站呈现各国语言的更多相关文章
- 基于jQuery.i18n.properties实现前端网站语言多版本
我是参考播客做了个demo:http://blog.csdn.net/aixiaoyang168/article/details/49336709 jQuery.i18n.properties采用.p ...
- 国际化(i18n) 各国语言缩写
internationalization (国际化)简称:i18n,因为在i和n之间还有18个字符,localization(本地化 ),简称L10n. 一般用语言_地区的形式表示一种语言,如:zh_ ...
- jquery/vue/react前端多语言国际化翻译方案指南
❝ 本文章共3470字,预计阅读时间5-10分钟. ❞ 国际化-前言 每个开发者能希望编写的程序可以让全世界的用户使用,它要求从产品中抽离所有地域语言,国家/地区和文化相关的元素.换种说法,「应用程序 ...
- 本地化web开发的一个例子-jquery.i18n.properties
关键字:Web本地化, jquery,jquery.i18n.properties. 运行环境:Chrome, IE. 本文介绍使用jquery.i18n.properties对网站前端实现本地化,支 ...
- 做网站用UTF-8还是GB2312 & 各国语言对应字符集
经常我们打开外国网站的时候出现乱码,又或者打开很多非英语的外国网站的时候,显示的都是口口口口口的字符, WordPress程序是用的UTF-8,很多cms用的是GB2312. ● 为什么有这么多编码? ...
- 使用 jQuery.i18n.properties 实现 Web 前端的国际化
jQuery.i18n.properties 简介 在介绍 jQuery.i18n.properties 之前,我们先来看一下什么是国际化.国际化英文单词为:Internationalization, ...
- jQuery之前端国际化jQuery.i18n.properties
jQuery.i18n.properties是一款轻量级的jQuery国际化插件,能实现Web前端的国际化. 国际化英文单词为:Internationalization,又称i18n,"i& ...
- jquery.i18n.properties前端国际化解决方案“填坑日记”
但现在的情况是老的项目并没有使用这类架构.说起国际化,博主几年前就做过,在MVC里面实现国际化有通用的解决方案,主要就是通过资源文件的方式定义多语言.最初接到这个任务,并没有太多顾虑,毕竟这种东西有很 ...
- 前端系列——jquery.i18n.properties前端国际化解决方案“填坑日记”
前言:最近,新的平台还没有开发完成,原来的老项目又提出了新的需求:系统国际化.如果是前后端完全分离的开发模式,要做国际化,真的太简单了,有现成的解决方案,基于Node构建的时下热门的任何一种技术选型都 ...
随机推荐
- pngquant——一个好用的png压缩工具
一个可以进行有损图片压缩的命令行工具和代码库. 网址:https://pngquant.org/ 1.为什么选择pngquant 传说中的神器——tinyPng 我们现在用的工具——ImageAlph ...
- shell脚本编程基础--文本比较
1.概述 允许测试Linux文件系统上文件的目录和状态. 2.详解 2.1 检查目录 -d测试会检查指定的目录是否存在于系统中.当我们打算将文件写入目录或是准备切换到该目录时,先进行测试是比较好的做法 ...
- 前后台分离的 NET Core 通用权限管理系统
前言 从事软件开发这个行业现在已经有十几年了,项目无论大小权限认证.授权模块总是或多或少有功能需求的,这一块费时费力但是又存在于后台,使用最多的可能是运维人员所以处于出力不讨好的尴尬地位,每次有新的项 ...
- luogu P4065 [JXOI2017]颜色 |随机化+前缀和
题目描述 可怜有一个长度为 n 的正整数序列 Ai,其中相同的正整数代表着相同的颜色. 现在可怜觉得这个序列太长了,于是她决定选择一些颜色把这些颜色的所有位置都删去. 删除颜色 i 可以定义为把所有满 ...
- Rancher1-简单介绍-认识rancher
认识rancher 一.简介 1.什么rancher Rancher是一个开源软件平台,使组织能够在生产中运行和管理Docker和Kubernetes.使用Rancher,组织不再需要使用一套独特的开 ...
- kafka - java.nio.file.FileSystemException
在启动Kafka时报错无法启动 E:\kafka_2.12-2.3.1\kafka-logs\__consumer_offsets-48\00000000000000000000.timeindex. ...
- kubernetes学习笔记(一)——minikube安装记录
想学习一下kubernetes,于是先安装一个单机版来学习一下.但是就是这个最简单的单机版安装方式都倒腾了我好久,记录下自己的安装过程.博主是在windows利用vmware workstation安 ...
- [TimLinux] 开博一个月了
做事情,怕的确实是坚持!为了自己尽可能的每天一篇博文,时常在下班后,23点开始写博,有时候写到接近一点钟.但是这第一个月,确实坚持下来了.平均每天一篇.写博的过程,其实是: 知识的总结过程: 因为要求 ...
- webpack4.0(三)--动态生成html
webpack4.0--动态生成html 前言: webpack-dev-server实现了自动编译刷新浏览器,让编译出来的bundle.js托关于服务器根路径(电脑内存)中去.使用--content ...
- java中List、Map、Set、Stack、Queue、Collections等的使用
java中List.Map.Set.Stack.Queue.Collections等的使用 List 创建方法: List<String> list=new ArrayList<&g ...