项目中遇到多语言的支持问题,多语言主要要做到两点:

  • 根据用户目前的浏览器配置语言进行显示
  • 提供语言切换按钮,用户自定义选择不同的语言显示

在这里,首先展示一个获取用户当前浏览器配置语言进行显示的小demo。
代码主要分为两部分,index.html文件和language.js

// language.jsvar love = ['我爱你.', 'I love you!'];

通过设置所取的love数组中元素的index值,来设定不同的语言。例如love[0] 为’我爱你’,love[1]为‘I love you’。
index.html文件

<!DOCTYPE html>
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script><script type="text/javascript" src="language.js"></script>
</head>
<body><div id="text"></div><script>var lang_flag;var lang = navigator.language || navigator.userLanguage; //常规浏览器语言和IE浏览器lang = lang.substr(0, 2); //截取lang前2位字符if (lang == 'zh') {lang_flag = 0;} else {lang_flag = 1;}$('#text').text(love[lang_flag])</script>
</body>
</html>

笔者使用的Chrome 浏览器,语言设置为English,Settings->Advanced->Language

页面显示如下:

改为中文浏览器:

注意:index.html中需要有meta标签<meta charset="UTF-8">,如果没有,中文会显示乱码。

原生js获取浏览器语言配置,设置文本多语言(小demo)相关推荐

  1. [完美]原生JS获取浏览器版本判断--支持Edge,IE,Chrome,Firefox,Opera,Safari,以及各种使用Chrome和IE混合内核的浏览器...

    [完美]原生JS获取浏览器版本判断--支持Edge,IE,Chrome,Firefox,Opera,Safari,以及各种使用Chrome和IE混合内核的浏览器 原文:[完美]原生JS获取浏览器版本判 ...

  2. 原生JS获取浏览器版本判断--支持Edge,IE,Chrome,Firefox,Opera,Safari(亲测可用)

    浏览器类型及版本判断在开发中是比较常见的使用场景,之前用var ua = navigator.userAgent.toLowerCase()来判断浏览器的内核,发现chrome和edge浏览器无法区分 ...

  3. 原生JS 获取浏览器类型-2022新版

    浏览器类型的获取逻辑需要不断更新,因为各家浏览器会更新他们的底层,导致之前的逻辑失败 后续出现不兼容问题的话,再进行更新 当前版本:20220106 function checkBrowser() { ...

  4. html光标定位到文本框,js获取光标位置和设置文本框光标位置示例代码

    function getTxt1CursorPosition(){ var oTxt1 = document.getElementById("txt1"); var cursurP ...

  5. 原生JS获取ScrollTop/ScrollLeft

    使用原生JS获取浏览器ScrollTop,ScrollLeft的方法: function scroll() {if (window.pageYOffset != null){ // 支持IE9 +re ...

  6. 原生js获取以固定字符开头的控件id,并设置属性

    原生js获取以固定字符开头的控件id,并设置属性 还在用JQ加CSS选择器获取指定id开头的DOM嘛? 现在试试 JavaScript提供的querySelectorAll函数 目前几乎主流浏览器均支 ...

  7. 怎么修改html行内样式表,原生JS获取及设置CSS样式-1.行内样式

    面试中,应该会经常被问到样式的写法以及如何使用原生JS获取及操作样式的问题吧,让我给大家总结一下~ HTML中样式的写法不外乎以下四种方式 行内样式 假装有内容 head内部样式 div { widt ...

  8. js获取浏览器语言(ie、ff、chrome)、contextpath

    js获取浏览器语言(ie.ff.chrome).contextpath /js获取浏览器语言(ie.ff.chrome) Java代码   var language_en_us = "en- ...

  9. js 获取浏览器版本信息(全)

    原文地址 js 获取浏览器版本信息(全) 觉得挺不错的,所以就收藏起来 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona ...

  10. JS获取浏览器高度 并赋值给类

    JS获取浏览器宽高的兼容写法: var w = window.innerWidth || document.documentElement.clientWidth || document.body.c ...

最新文章

  1. 是时候取消Scrum的产品负责人角色了吗?
  2. Github无法加载或不显示图片问题
  3. centos6.4安装java,CentOS6.4下YUM安装MySQL和JDK和Tomcat
  4. Hyper-V 2016 系列教程25 配置NFS 存储服务器
  5. 2.1 词汇表征-深度学习第五课《序列模型》-Stanford吴恩达教授
  6. C语言 读取txt文档按行读取到新的txt文档
  7. C语言试题三十二之编写函数function,它的功能是:将一个字符串转换为一个整数(不得调用c语言提供的将字符串转换为整数的函数)。
  8. YouTube深度学习推荐系统的十大工程问题
  9. /etc/group
  10. Python基础项目:超市购物管理系统
  11. 原生select下拉框样式修改:去除聚焦的黄色边框样式
  12. 读《天才在左,疯子在右》02--棋子
  13. KnockOut+TypeScript+上传图片(oos功能)以及导入Excel文件(oos功能)并回显插入
  14. Python这么强大, 怎样快速学习?
  15. ubuntu18.04系统外接显卡(英伟达RTX 2080 Ti)驱动安装
  16. HDU-4417 Super Mario (主席树)
  17. 数据、数据库、数据库管理系统、数据库系统的概念
  18. h5移动端安卓键盘顶起页面回落问题
  19. 多规格选择样式/问卷调查选择(小程序)
  20. mysql 主从同步master主数据库无法写入

热门文章

  1. 软件项目管理第五章笔记---项目成本管理
  2. 欧拉计划26--Reciprocal cycles
  3. 编曲混音插件全集-UJAM Full Bundle: The Collector’s Edition 2021.4 MacOSX
  4. NCURSES程序设计之皇后问题
  5. 经典动态规划:打家劫舍系列问题
  6. 移远UMTS LTE EVB Kit
  7. 机器学习5——决策树
  8. 【不三不四的脑洞】“被相亲对象拉黑“所引发的关于链表合并算法的思考
  9. matlab画经纬度点图,Matlab绘制汉经纬度的散点图 1
  10. OfficeXP的激活码保存位置