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

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

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

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

// language.js

var 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">,如果没有,中文会显示乱码。

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值