Javascript 如何基于匹配数组中的值来显示特定图像?
我正在尝试开发一种JavaScript来检测浏览器的语言(因为它使用Javascript 如何基于匹配数组中的值来显示特定图像?,javascript,arrays,Javascript,Arrays,我正在尝试开发一种JavaScript来检测浏览器的语言(因为它使用navigator.Browserlanguage和window.navigator.language),并基于此向用户显示特定的图像。例如,如果浏览器语言为“en-GB”,则它将显示某个图像,如果浏览器语言为“fr”,则它将显示不同的图像,依此类推 目前,我得到的代码在数组中循环以检测浏览器语言并显示“支持的语言”。我已经在FF、IE、Chrome、Safari和Opera中对它进行了测试,但现在我需要知道是否有一种基于浏览器
navigator.Browserlanguage
和window.navigator.language
),并基于此向用户显示特定的图像。例如,如果浏览器语言为“en-GB”,则它将显示某个图像,如果浏览器语言为“fr”,则它将显示不同的图像,依此类推
目前,我得到的代码在数组中循环以检测浏览器语言并显示“支持的语言”。我已经在FF、IE、Chrome、Safari和Opera中对它进行了测试,但现在我需要知道是否有一种基于浏览器语言显示图像的方法。我有办法做到这一点吗?也就是说,我是否将两个数组链接在一起(这可能吗?),或者我是否可以只使用一个图像数组,并将相应的图像与文本在数组中的位置相同?我将如何实现这一目标
以下是我目前掌握的代码:
var IAB_Array = new Array("en","en-GB","en-US","fr","de","en-gb","en-us");
var lang = IAB_lang_detect();
if(lang) document.write('Language supported');
function IAB_lang_detect() {
if ((navigator.browserLanguage) || (window.navigator.language)) {
for (var i=0;i<IAB_Array.length;i++) {
if((IAB_Array[i]==navigator.browserLanguage) || (IAB_Array[i]==window.navigator.language)) {
return true;
}
}
}
return false;
}
var-IAB_数组=新数组(“en”、“en-GB”、“en-US”、“fr”、“de”、“en-GB”、“en-US”);
var lang=IAB_lang_detect();
if(lang)document.write(“支持的语言”);
函数IAB_lang_detect(){
if((navigator.browserLanguage)| |(window.navigator.language)){
对于(var i=0;i而不是在数组中使用字符串,插入一个对象:
IAB_Array = [
{lang: "en", image: "english.png"},
{lang: "en-GB", image: "en_gb.png"},
...
];
然后,您可以使用IAB_Array.lang
或IAB_Array[“lang”]
查找该对象的属性