0

我正在处理一个页面,其中有一个谷歌驱动的地图(就像你在 maps.google.com 上找到的那样。它在 chrome 和 FireFox 中运行良好(当然),但在 IE 中不行。

只发生在 IE (<9) 中。地图位于选项卡内。

这是我用来生成地图的代码:

    <!-- Estilos para el contenedor del mapa -->
<style type="text/css">  
    #datosMap
    {
        width: 20%;
    }
    #datosMap, #map
    {
        display: inline-block;
        vertical-align: top;
    }
    #map{
        height: 500px;
        width: 70%;
    }   
    #subtabMapa
    {
        margin: 16px;
    }
</style>

$(document).ready(function(){   
//Funcion para cargar el mapa
    function cagarMapa(latitud,longitud,zoom){
        //Se carga el mapa
        var latlng = new google.maps.LatLng(latitud, longitud);
        var myOptions = {
              zoom: zoom,
              center: latlng,
              mapTypeId: google.maps.MapTypeId.ROADMAP,
            };
        var map = new google.maps.Map(document.getElementById("map"),myOptions);    

        var marker = new google.maps.Marker({
            position: latlng,
            map: map
        });     


         google.maps.event.trigger(map, 'resize');
    }//Fin funcion cargar
    //------------------------------------

    //latitud y longitud de colombia
    var latitud = 4.214495;
    var longitud = -74.341861;
    var zoom = 5;

    cagarMapa(latitud,longitud,zoom);//Se carga el mapa en las coordenadas y el zoom indicados

});//Fin ready


<div id="map"><!--MAP HERE--></div> <div id="datosMap"><!-- here is a form --></div>

看起来像这样:http: //i.imgur.com/PHDVxUi.png

任何人都可以帮我一把

4

3 回答 3

1

不确定它是否会有所帮助,但这篇文章建议从地图前面删除 var。

var map = new google.maps.Map(document.getElementById("map"),myOptions);

变成

map = new google.maps.Map(document.getElementById("map"),myOptions);
于 2013-02-28T22:30:47.690 回答
0

邓肯,雷夫谢谢。我尝试使用您的解决方案,但问题仍然存在。

我通过这种方式解决了这个问题:单击选项卡时加载地图。

这是我的代码:

$(document).on("ready",init);
function init()
{
  $("#tabmapa").on("click",mapainicial)
}
function mapainicial()
{
  //latitud y longitud de colombia
  var latitud = 4.214495;
  var longitud = -74.341861;
  var zoom = 5;
  cagarMapa(latitud,longitud,zoom);//Se carga el mapa en las coordenadas y el zoom        indicados
}

感谢您的帮助(Y)。PD:Mods,你能把这个标记为已解决吗?

于 2013-03-01T17:03:37.210 回答
0

问题是您在此处最后一项上的尾随逗号。IE 不喜欢这样,会导致 JS 错误:

mapTypeId: google.maps.MapTypeId.ROADMAP,
于 2013-03-01T09:52:15.380 回答