Internet explorer 显示谷歌热图的问题

Internet explorer 显示谷歌热图的问题,internet-explorer,google-chrome,heatmap,Internet Explorer,Google Chrome,Heatmap,希望你能帮助我与下面的代码。我在Chrome中加载热图时遇到问题,但它确实在IE中加载(刷新后),希望您能提供一些指针给我检查,因为我是google maps、JS和JSON的新手:-) 谢谢大家! <!DOCTYPE html> <html> <head> <title>Phone Home</title> <meta name="viewport" co

希望你能帮助我与下面的代码。我在Chrome中加载热图时遇到问题,但它确实在IE中加载(刷新后),希望您能提供一些指针给我检查,因为我是google maps、JS和JSON的新手:-)

谢谢大家!

           <!DOCTYPE html>
    <html>
      <head>
        <title>Phone Home</title>
        <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
        <meta charset="utf-8">
        <style>
          html, body, #map-canvas {
            height: 100%;
            margin: 0px;
            padding: 0px
          }
        </style>
        <script type="text/javascript" src="../src/markerclusterer.js"></script>
        <script type="text/javascript" src="../src/jquery.js"></script>
        <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?libraries=geometry,visualization&key=****"></script>
    <script>
        var map,heatmap;
        var markers = [];
        var xmlhttp = new XMLHttpRequest();
        var url = "../src/et.json";

        function initialize() {
            // Create a simple map.
            map = new google.maps.Map(document.getElementById('map-canvas'), {
                zoom: 3,
                center:  new google.maps.LatLng(0,0)
            });

            getMarkers(url);

            heatmap = new google.maps.visualization.HeatmapLayer({
                data: markers
            });

            heatmap.setMap(map);
        }

        function getMarkers(url){
            xmlhttp.onreadystatechange = function() {
                if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                    var myArr = JSON.parse(xmlhttp.responseText);
                    loadMarkers(myArr);
                }
        }

        xmlhttp.open("GET", url, true);
        xmlhttp.send();

        function loadMarkers(arr) {
            var out = "";
            var i;
            for(i = 0; i < arr.length; i++) {
                var latLng = new google.maps.LatLng(arr[i].latitude,arr[i].longitude);
                var marker = new google.maps.Marker({
                    position: latLng
                });
                    markers.push(latLng);
            }
        }
    }



    google.maps.event.addDomListener(window, 'load', initialize);

</script>
</head>
<body>

          <div id="map-canvas"></div>

</body>
</html>

打电话回家
html,正文,#地图画布{
身高:100%;
边际:0px;
填充:0px
}
var图、热图;
var标记=[];
var xmlhttp=new XMLHttpRequest();
var url=“../src/et.json”;
函数初始化(){
//创建一个简单的地图。
map=new google.maps.map(document.getElementById('map-canvas'){
缩放:3,
中心:新google.maps.LatLng(0,0)
});
获取标记(url);
heatmap=新建google.maps.visualization.HeatmapLayer({
数据:标记
});
热图.设置图(map);
}
函数getMarkers(url){
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readyState==4&&xmlhttp.status==200){
var myArr=JSON.parse(xmlhttp.responseText);
装载标记(myArr);
}
}
open(“GET”,url,true);
xmlhttp.send();
函数加载标记(arr){
var out=“”;
var i;
对于(i=0;i
您遇到了什么问题?标记/热图没有显示我认为这与地图加载时外部调用的数据没有准备好有关。但是,当在mapI上使用相同的外部数据和集群标记时,我没有这个问题,通过移动heatmap=new google.maps.visualization.heatmapplayer({data:markers})解决了这个问题;热图.设置图(map);到loadMarkers函数