Google地图v3不会在IE9中加载

问题描述:

我在加载Internet Explorer 9中的Google地图v3时出现问题。Chrome和Firefox完全加载它,但IE9根本没有显示它。我有这样的功能:Google地图v3不会在IE9中加载

function load() { 
    var map = new google.maps.Map(document.getElementById("mapa"), { 
    center: new google.maps.LatLng(44.109742, 20.462222), 
    zoom: 7, 
    mapTypeId: 'roadmap' 
    }); 

这我在这里呼吁:

<body onload="load()"> 

在我的网页的开始,我有一个“如果”的条款,承认浏览器:

<?php if (preg_match('/MSIE/i', $_SERVER['HTTP_USER_AGENT'])) { ?> 
    <link href="CSS/stylemapaIE.css" rel="stylesheet" type="text/css" /> 
<?php } elseif (preg_match('/Firefox/i', $_SERVER['HTTP_USER_AGENT'])) { ?> 
    <link href="CSS/stylemapaMF.css" rel="stylesheet" type="text/css" /> 
<?php } else { ?> 
    <link href="CSS/stylemapa.css" rel="stylesheet" type="text/css" /> 
<?php } ?> 

和使用三种不同的CSS样式表。你可以看到页面http://jedanzasve.rs/Test/mapaponuda.php有什么想法?

+0

您的地图似乎在IE9中为我加载,虽然有一些未定义的变量,这在Chrome中也不存在。 – Sampson

+0

似乎没有任何特殊的选项卡,我应该看什么? –

+0

对不起,我刚刚看到一个,它不在那里,因为我刷新页面后打开了控制台。我有:SCRIPT5007:属性'load'的值为空或未定义,而不是函数对象 mapaponuda.php,第203行字符1 –

在IE9的地图加载对我来说(浏览器模式:IE9)以及Chrome。但是,您确实在控制台中出现了一些undefined变量。这表明你没有正确引用所有的资源,或者你没有按照正确的顺序引用它们。当然,另一种可能性是你只是简单地处理缓存文件。

清除缓存,仔细检查您的资源及其依赖关系。

确保您没有使用IE 9的兼容性视图。要验证此开放式工具并查看菜单栏右侧的两个下拉列表(如果它说IE9兼容性视图将其更改为Internet Explorer 9和Internet Explorer 9标准)。

要打开开发人员工具

按F12

工具>选择F12开发工具

+0

+1在IE9中检查站点Compat View确实给了我报告看到的错误。 – Sampson

+0

我没有使用兼容性视图,但感谢您的建议。缓存是问题,还有一些糟糕的依赖关系。 –