原生js獲取瀏覽器語言配置,設定文字多語言(小demo)
阿新 • • 發佈:2019-01-07
專案中遇到多語言的支援問題,多語言主要要做到兩點:
- 根據使用者目前的瀏覽器配置語言進行顯示
- 提供語言切換按鈕,使用者自定義選擇不同的語言顯示
在這裡,首先展示一個獲取使用者當前瀏覽器配置語言進行顯示的小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
頁面顯示如下:
改為中文瀏覽器: