1、多國語言縮寫列表javascript
由於涉及到瀏覽器的可接收語言,因此須要知道各個國家的語言縮寫。java
這個百度一下便可。瀏覽器
en 英文 en_US 英文 (美國) ar 阿拉伯文 ar_AE 阿拉伯文 (阿拉伯聯合酋長國) ar_BH 阿拉伯文 (巴林) ar_DZ 阿拉伯文 (阿爾及利亞) ar_EG 阿拉伯文 (埃及) ar_IQ 阿拉伯文 (伊拉克) ar_JO 阿拉伯文 (約旦) ar_KW 阿拉伯文 (科威特) ar_LB 阿拉伯文 (黎巴嫩) ar_LY 阿拉伯文 (利比亞) ar_MA 阿拉伯文 (摩洛哥) ar_OM 阿拉伯文 (阿曼) ar_QA 阿拉伯文 (卡塔爾) ar_SA 阿拉伯文 (沙特阿拉伯) ar_SD 阿拉伯文 (蘇丹) ar_SY 阿拉伯文 (敘利亞) ar_TN 阿拉伯文 (突尼斯) ar_YE 阿拉伯文 (也門) be 白俄羅斯文 be_BY 白俄羅斯文 (白俄羅斯) bg 保加利亞文 bg_BG 保加利亞文 (保加利亞) ca 加泰羅尼亞文 ca_ES 加泰羅尼亞文 (西班牙) ca_ES_EURO 加泰羅尼亞文 (西班牙,Euro) cs 捷克文 cs_CZ 捷克文 (捷克共和國) da 丹麥文 da_DK 丹麥文 (丹麥) de 德文 de_AT 德文 (奧地利) de_AT_EURO 德文 (奧地利,Euro) de_CH 德文 (瑞士) de_DE 德文 (德國) de_DE_EURO 德文 (德國,Euro) de_LU 德文 (盧森堡) de_LU_EURO 德文 (盧森堡,Euro) el 希臘文 el_GR 希臘文 (希臘) en_AU 英文 (澳大利亞) en_CA 英文 (加拿大) en_GB 英文 (英國) en_IE 英文 (愛爾蘭) en_IE_EURO 英文 (愛爾蘭,Euro) en_NZ 英文 (新西蘭) en_ZA 英文 (南非) es 西班牙文 es_BO 西班牙文 (玻利維亞) es_AR 西班牙文 (阿根廷) es_CL 西班牙文 (智利) es_CO 西班牙文 (哥倫比亞) es_CR 西班牙文 (哥斯達黎加) es_DO 西班牙文 (多米尼加共和國) es_EC 西班牙文 (厄瓜多爾) es_ES 西班牙文 (西班牙) es_ES_EURO 西班牙文 (西班牙,Euro) es_GT 西班牙文 (危地馬拉) es_HN 西班牙文 (洪都拉斯) es_MX 西班牙文 (墨西哥) es_NI 西班牙文 (尼加拉瓜) et 愛沙尼亞文 es_PA 西班牙文 (巴拿馬) es_PE 西班牙文 (祕魯) es_PR 西班牙文 (波多黎哥) es_PY 西班牙文 (巴拉圭) es_SV 西班牙文 (薩爾瓦多) es_UY 西班牙文 (烏拉圭) es_VE 西班牙文 (委內瑞拉) et_EE 愛沙尼亞文 (愛沙尼亞) fi 芬蘭文 fi_FI 芬蘭文 (芬蘭) fi_FI_EURO 芬蘭文 (芬蘭,Euro) fr 法文 fr_BE 法文 (比利時) fr_BE_EURO 法文 (比利時,Euro) fr_CA 法文 (加拿大) fr_CH 法文 (瑞士) fr_FR 法文 (法國) fr_FR_EURO 法文 (法國,Euro) fr_LU 法文 (盧森堡) fr_LU_EURO 法文 (盧森堡,Euro) hr 克羅地亞文 hr_HR 克羅地亞文 (克羅地亞) hu 匈牙利文 hu_HU 匈牙利文 (匈牙利) is 冰島文 is_IS 冰島文 (冰島) it 意大利文 it_CH 意大利文 (瑞士) it_IT 意大利文 (意大利) it_IT_EURO 意大利文 (意大利,Euro) iw 希伯來文 iw_IL 希伯來文 (以色列) ja 日文 ja_JP 日文 (日本) ko 朝鮮文 ko_KR 朝鮮文 (南朝鮮) lt 立陶宛文 lt_LT 立陶宛文 (立陶宛) lv 拉托維亞文(列託) lv_LV 拉托維亞文(列託) (拉脫維亞) mk 馬其頓文 mk_MK 馬其頓文 (馬其頓王國) nl 荷蘭文 nl_BE 荷蘭文 (比利時) nl_BE_EURO 荷蘭文 (比利時,Euro) nl_NL 荷蘭文 (荷蘭) nl_NL_EURO 荷蘭文 (荷蘭,Euro) no 挪威文 no_NO 挪威文 (挪威) no_NO_NY 挪威文 (挪威,Nynorsk) pl 波蘭文 pl_PL 波蘭文 (波蘭) pt 葡萄牙文 pt_BR 葡萄牙文 (巴西) pt_PT 葡萄牙文 (葡萄牙) pt_PT_EURO 葡萄牙文 (葡萄牙,Euro) ro 羅馬尼亞文 ro_RO 羅馬尼亞文 (羅馬尼亞) ru 俄文 ru_RU 俄文 (俄羅斯) sh 塞波尼斯-克羅地亞文 sh_YU 塞波尼斯-克羅地亞文 (南斯拉夫) sk 斯洛伐克文 sk_SK 斯洛伐克文 (斯洛伐克) sl 斯洛文尼亞文 sl_SI 斯洛文尼亞文 (斯洛文尼亞) sq 阿爾巴尼亞文 sq_AL 阿爾巴尼亞文 (阿爾巴尼亞) sr 塞爾維亞文 sr_YU 塞爾維亞文 (南斯拉夫) sv 瑞典文 sv_SE 瑞典文 (瑞典) th 泰文 th_TH 泰文 (泰國) tr 土耳其文 tr_TR 土耳其文 (土耳其) uk 烏克蘭文 uk_UA 烏克蘭文 (烏克蘭) zh 中文 zh_CN 中文 (中國) zh_HK 中文 (香港) zh_TW 中文 (臺灣) Countries and Regions國家或地區國際域名縮寫 Angola安哥拉AO Afghanistan阿富汗AF Albania阿爾巴尼亞AL Algeria阿爾及利亞DZ Andorra安道爾共和國AD Anguilla安圭拉島AI Antigua and Barbuda安提瓜和巴布達AG Argentina阿根廷AR Armenia亞美尼亞AM Ascension阿森鬆 Australia澳大利亞AU Austria奧地利AT Azerbaijan阿塞拜疆AZ Bahamas巴哈馬BS Bahrain巴林BH Bangladesh孟加拉國BD Barbados巴巴多斯BB Belarus白俄羅斯BY Belgium比利時BE Belize伯利茲BZ Benin貝寧BJ Bermuda Is.百慕大羣島BM Bolivia玻利維亞BO Botswana博茨瓦納BW Brazil巴西BR Brunei文萊BN Bulgaria保加利亞BG Burkina-faso布基納法索BF Burma緬甸MM Burundi布隆迪BI Cameroon喀麥隆CM Canada加拿大CA Cayman Is.開曼羣島 Central African Republic中非共和國CF Chad乍得TD Chile智利CL China中國CN Colombia哥倫比亞CO Congo剛果CG Cook Is.庫克羣島CK Costa Rica哥斯達黎加CR Cuba古巴CU Cyprus塞浦路斯CY Czech Republic捷克CZ Denmark丹麥DK Djibouti吉布提DJ Dominica Rep.多米尼加共和國DO Ecuador厄瓜多爾EC Egypt埃及EG EI Salvador薩爾瓦多SV Estonia愛沙尼亞EE Ethiopia埃塞俄比亞ET Fiji斐濟FJ Finland芬蘭FI France法國FR French Guiana法屬圭亞那GF Gabon加蓬GA Gambia岡比亞GM Georgia格魯吉亞GE Germany德國DE Ghana加納GH Gibraltar直布羅陀GI Greece希臘GR Grenada格林納達GD Guam關島GU Guatemala危地馬拉GT Guinea幾內亞GN Guyana圭亞那GY Haiti海地HT Honduras洪都拉斯HN Hongkong香港HK Hungary匈牙利HU Iceland冰島IS India印度IN Indonesia印度尼西亞ID Iran伊朗IR Iraq伊拉克IQ Ireland愛爾蘭IE Israel以色列IL Italy意大利IT Ivory Coast科特迪瓦 Jamaica牙買加JM Japan日本JP Jordan約旦JO Kampuchea (Cambodia )柬埔寨KH Kazakstan哈薩克斯坦KZ Kenya肯尼亞KE Korea韓國KR Kuwait科威特KW Kyrgyzstan吉爾吉斯坦KG Laos老撾LA Latvia拉脫維亞LV Lebanon黎巴嫩LB Lesotho萊索托LS Liberia利比里亞LR Libya利比亞LY Liechtenstein列支敦士登LI Lithuania立陶宛LT Luxembourg盧森堡LU Macao澳門MO Madagascar馬達加斯加MG Malawi馬拉維MW Malaysia馬來西亞MY Maldives馬爾代夫MV Mali馬裏ML Malta馬耳他MT Mariana Is馬里亞那羣島 Martinique馬提尼克 Mauritius毛里求斯MU Mexico墨西哥MX Moldova, Republic of摩爾多瓦MD en 英文 en_US 英文 (美國) ar 阿拉伯文 ar_AE 阿拉伯文 (阿拉伯聯合酋長國) ar_BH 阿拉伯文 (巴林) ar_DZ 阿拉伯文 (阿爾及利亞) ar_EG 阿拉伯文 (埃及) ar_IQ 阿拉伯文 (伊拉克) ar_JO 阿拉伯文 (約旦) ar_KW 阿拉伯文 (科威特) ar_LB 阿拉伯文 (黎巴嫩) ar_LY 阿拉伯文 (利比亞) ar_MA 阿拉伯文 (摩洛哥) ar_OM 阿拉伯文 (阿曼) ar_QA 阿拉伯文 (卡塔爾) ar_SA 阿拉伯文 (沙特阿拉伯) ar_SD 阿拉伯文 (蘇丹) ar_SY 阿拉伯文 (敘利亞) ar_TN 阿拉伯文 (突尼斯) ar_YE 阿拉伯文 (也門) be 白俄羅斯文 be_BY 白俄羅斯文 (白俄羅斯) bg 保加利亞文 bg_BG 保加利亞文 (保加利亞) ca 加泰羅尼亞文 ca_ES 加泰羅尼亞文 (西班牙) ca_ES_EURO 加泰羅尼亞文 (西班牙,Euro) cs 捷克文 cs_CZ 捷克文 (捷克共和國) da 丹麥文 da_DK 丹麥文 (丹麥) de 德文 de_AT 德文 (奧地利) de_AT_EURO 德文 (奧地利,Euro) de_CH 德文 (瑞士) de_DE 德文 (德國) de_DE_EURO 德文 (德國,Euro) de_LU 德文 (盧森堡) de_LU_EURO 德文 (盧森堡,Euro) el 希臘文 el_GR 希臘文 (希臘) en_AU 英文 (澳大利亞) en_CA 英文 (加拿大) en_GB 英文 (英國) en_IE 英文 (愛爾蘭) en_IE_EURO 英文 (愛爾蘭,Euro) en_NZ 英文 (新西蘭) en_ZA 英文 (南非) es 西班牙文 es_BO 西班牙文 (玻利維亞) es_AR 西班牙文 (阿根廷) es_CL 西班牙文 (智利) es_CO 西班牙文 (哥倫比亞) es_CR 西班牙文 (哥斯達黎加) es_DO 西班牙文 (多米尼加共和國) es_EC 西班牙文 (厄瓜多爾) es_ES 西班牙文 (西班牙) es_ES_EURO 西班牙文 (西班牙,Euro) es_GT 西班牙文 (危地馬拉) es_HN 西班牙文 (洪都拉斯) es_MX 西班牙文 (墨西哥) es_NI 西班牙文 (尼加拉瓜) et 愛沙尼亞文 es_PA 西班牙文 (巴拿馬) es_PE 西班牙文 (祕魯) es_PR 西班牙文 (波多黎哥) es_PY 西班牙文 (巴拉圭) es_SV 西班牙文 (薩爾瓦多) es_UY 西班牙文 (烏拉圭) es_VE 西班牙文 (委內瑞拉) et_EE 愛沙尼亞文 (愛沙尼亞) fi 芬蘭文 fi_FI 芬蘭文 (芬蘭) fi_FI_EURO 芬蘭文 (芬蘭,Euro) fr 法文 fr_BE 法文 (比利時) fr_BE_EURO 法文 (比利時,Euro) fr_CA 法文 (加拿大) fr_CH 法文 (瑞士) fr_FR 法文 (法國) fr_FR_EURO 法文 (法國,Euro) fr_LU 法文 (盧森堡) fr_LU_EURO 法文 (盧森堡,Euro) hr 克羅地亞文 hr_HR 克羅地亞文 (克羅地亞) hu 匈牙利文 hu_HU 匈牙利文 (匈牙利) is 冰島文 is_IS 冰島文 (冰島) it 意大利文 it_CH 意大利文 (瑞士) it_IT 意大利文 (意大利) it_IT_EURO 意大利文 (意大利,Euro) iw 希伯來文 iw_IL 希伯來文 (以色列) ja 日文 ja_JP 日文 (日本) ko 朝鮮文 ko_KR 朝鮮文 (南朝鮮) lt 立陶宛文 lt_LT 立陶宛文 (立陶宛) lv 拉托維亞文(列託) lv_LV 拉托維亞文(列託) (拉脫維亞) mk 馬其頓文 mk_MK 馬其頓文 (馬其頓王國) nl 荷蘭文 nl_BE 荷蘭文 (比利時) nl_BE_EURO 荷蘭文 (比利時,Euro) nl_NL 荷蘭文 (荷蘭) nl_NL_EURO 荷蘭文 (荷蘭,Euro) no 挪威文 no_NO 挪威文 (挪威) no_NO_NY 挪威文 (挪威,Nynorsk) pl 波蘭文 pl_PL 波蘭文 (波蘭) pt 葡萄牙文 pt_BR 葡萄牙文 (巴西) pt_PT 葡萄牙文 (葡萄牙) pt_PT_EURO 葡萄牙文 (葡萄牙,Euro) ro 羅馬尼亞文 ro_RO 羅馬尼亞文 (羅馬尼亞) ru 俄文 ru_RU 俄文 (俄羅斯) sh 塞波尼斯-克羅地亞文 sh_YU 塞波尼斯-克羅地亞文 (南斯拉夫) sk 斯洛伐克文 sk_SK 斯洛伐克文 (斯洛伐克) sl 斯洛文尼亞文 sl_SI 斯洛文尼亞文 (斯洛文尼亞) sq 阿爾巴尼亞文 sq_AL 阿爾巴尼亞文 (阿爾巴尼亞) sr 塞爾維亞文 sr_YU 塞爾維亞文 (南斯拉夫) sv 瑞典文 sv_SE 瑞典文 (瑞典) th 泰文 th_TH 泰文 (泰國) tr 土耳其文 tr_TR 土耳其文 (土耳其) uk 烏克蘭文 uk_UA 烏克蘭文 (烏克蘭) zh 中文 zh_CN 中文 (中國) zh_HK 中文 (香港) zh_TW 中文 (臺灣)
2、利用js來作實現,如何判斷瀏覽器可接收的語言呢?緩存
這裏須要分狀況:cookie
var browser_language = navigator.browserLanguage;
if((typeof browser_language) !== "undefined" && browser_language !== null) //ie 存在返回 string
{
var lang = navigator.systemLanguage.toLowerCase();
} else {//firefox chorme etc. 不存在,返回 "undefined"
var lang = navigator.language.toLowerCase();
}
3、當用戶第一次進入頁面 --- 判斷是否有語言緩存在cookie中ide
function setCookie(name,value){// 設置cookie document.cookie = name + "="+ escape(value)+";path=/"; } function getCookie(name) {// 獲取cookie var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); if(arr=document.cookie.match(reg)){ return (arr[2]); } else { return null; } }
var clang = getCookie('mysite_language');//緩存的cookie語言標識 if(clang == '') {//若是爲空,設置默認語言,方便後面判斷。 clang = 'en'; } // console.log(clang); if(clang !== null) {//不爲null, 表示cookie中已經設置了語言標誌 if(clang !== 'en') { //coding...通常是要去到的語言頁面, } } else {//爲null, 第一次進入時 if ((typeof lgg) !== "undefined" && lgg !== null) { var lang = navigator.systemLanguage.toLowerCase(); } else { var lang = navigator.language.toLowerCase(); } // coding...要去到的語言頁面
}
4、總結:ui
①javascript控制cookie。spa
②javascript分狀況討論判斷瀏覽器有限支持國家語言,並獲取 國家語言縮寫。firefox
③須要瞭解國家語言縮寫,使這個縮寫和咱們要到達的頁面有必定關係。code
④判斷cookie中是否含有設置的語言標誌,沒有就去找瀏覽器可接收的語言標誌,不然進入默認語言目錄。