JavaScript&;JQuery在IE中无法正常工作
作为JS的新手,我很高兴得到一个在webkit浏览器中使用MaxMind API的脚本,但是IE不想参加聚会(我认为困扰IE的只是CSS/HTML问题!) 我正在测试的页面可以在这里找到- 正如您应该能够看到的,它在Chrome等中工作,但在IE(8)中不工作。非常感谢您的帮助JavaScript&;JQuery在IE中无法正常工作,javascript,jquery,internet-explorer-8,maxmind,Javascript,Jquery,Internet Explorer 8,Maxmind,作为JS的新手,我很高兴得到一个在webkit浏览器中使用MaxMind API的脚本,但是IE不想参加聚会(我认为困扰IE的只是CSS/HTML问题!) 我正在测试的页面可以在这里找到- 正如您应该能够看到的,它在Chrome等中工作,但在IE(8)中不工作。非常感谢您的帮助 谢谢在IE中,变量regionPhone未定义。显然,这是由于您的return语句(即:函数外部的return语句)造成的,正如Mark提到的 如何将逻辑包装到$(function(){})中,以确保在加载DOM时逻辑运
谢谢在IE中,变量
regionPhone
未定义。显然,这是由于您的return
语句(即:函数外部的return语句
)造成的,正如Mark提到的
如何将逻辑包装到$(function(){})
中,以确保在加载DOM时逻辑运行。此外,它还避免使用全局变量
比如:
$(function() {
var userRegion = geoip_region();
var userCountry = geoip_country_code();
var regionPhone;
switch (userCountry) {
case "GB":
var region = {};
// and so on
$(".Regional-Phone").html(regionPhone);
document.write('<p>Country: ' + userCountry + '<br>Region: ' + userRegion + '<br>City: ' + geoip_city() + '</p>');
});
$(函数(){
var userRegion=geoip_region();
var userCountry=geoip_country_code();
var区域电话;
交换机(用户国家){
案例“GB”:
var区域={};
//等等
$(“.Regional Phone”).html(Regional Phone);
编写(“国家:”+userCountry+”
地区:“+userRegion+”
城市:“+geoip_City()+””);
});
控制台在函数外部显示'return'语句
。
尝试将return
语句更改为break
default:
regionPhone = '<p>This is an IP from ' + userCountry + '</p>';
break;
默认值:
regionPhone='这是来自'+userCountry+'的IP';
打破
您的主机在IE8中说什么?您所说的“工作”或“不工作”是什么意思?为什么不在这里发布相关代码呢?如果您指出代码的哪一部分导致了问题,这会很有帮助。例如,将代码放入您的问题中。IE8不太喜欢switch语句。请尝试使用if/else。尝试使用+
运算符连接字符串,而不是按位&
@EliasVanOotegem。这是一个很好的观点nks@MarkDee,它现在正在“工作”: