10

我一直在查看许多不同的示例、问题和其他有关此的事情,但我似乎找不到任何东西,所以我最后会问一个问题。

我拥有的地图没有使标记居中,甚至没有显示它。指向它的最左上角。见这里:http: //i.imgur.com/Cc1ZK.png

我有一个用于联系信息的标签系统。当有人单击选项卡时,地图和信息会向下滑动并显示正确的标记(4 个单独的地图),但是我无法让第一个工作,所以我无法复制/粘贴它。

这是我的代码:

脚本:

var latlng = new google.maps.LatLng(42.3535727, -83.0591444);
var options = {  
      zoom: 14,  
      center: latlng,  
      mapTypeId: google.maps.MapTypeId.ROADMAP,
    };
var map = new google.maps.Map(document.getElementById('detroit_map'), options);
marker1 = new google.maps.Marker({  
            position: new google.maps.LatLng(42.3535727, -83.0591444),
            map: map
          }); 
map.setCenter(latlng);

html:

<div id="detroit_map" style="width:270px;height:170px;"></div>

PS,我在 chrome 开发人员工具中没有错误。

希望我忽略了一些非常简单的事情。

谢谢

为未来的观众找到答案

事实证明,我的标签导致了块之间的显示,没有一个让我的地图加载很奇怪。我为每个函数做了一个初始化函数,并调用了 setTimout('functionName', 1000); 调用要加载的地图。

我稍微更改了我的地图代码,但我们可以在 w3schools 的教程下找到所有内容。

4

2 回答 2

3

单击选项卡后初始化地图。当在选项卡内使用时,这也适用于 iframe 谷歌地图。

于 2013-09-23T09:40:07.430 回答
2

Tell your map to resize..

google.maps.event.trigger(map, 'resize');

map is the map instance that is returned by

map = new google.maps.Map(document.getElementById("map_canvas"), {
     mapTypeId: google.maps.MapTypeId.ROADMAP
});
于 2012-12-26T18:45:46.657 回答