原生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">,如果沒有,中文會顯示亂碼。

這裏寫圖片描述

發佈了49 篇原創文章 · 獲贊 58 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章