0

我为谷歌地图使用 GoMap jQuery 插件。带有地图的 div 默认是隐藏的。我几乎想出了如何正确显示地图,但不知何故,在我显示 div 后我无法将地图居中。我尝试了所有能找到的解决方案,现在我有下面的代码,但仍然无法正常工作。任何人都可以帮助我吗?谢谢。

<h3><a class="showmap" href="#">Show map</a></h3>
<div id="map" style="height: 350px; width: 700px;"> </div>

<script type="text/javascript">
$(function() { 
$("#map").goMap({
markers: [{  
        latitude: 49.676196, 
        longitude: 13.444927, 
        html: { 
            content: 'Marker description', 
            popup: true 
        } 
    }], 
    hideByClick: false,
    zoom: 12
}); 
});

$(document).ready(function(){
    $("#map").hide();
});

$('.showmap').click(function(){
 $('#map').slideToggle('slow', function() {
  var center = $.goMap.map.getCenter();      
  google.maps.event.trigger($.goMap.map, 'resize');
  $.goMap.map.setCenter(center);
  });
});

4

1 回答 1

1

您的解决方案几乎是完美的,但默认情况下,地图将平移以使 infoWindow 可见,这将改变中心。
您可以禁用 AutoPan:

$("#map").goMap({
markers: [{  
        latitude: 49.676196, 
        longitude: 13.444927, 
        html: { 
            content: 'Marker description', 
            popup: true ,
            disableAutoPan:true//<--
        } 
    }], 
    hideByClick: false,
    zoom: 12
}); 
});
于 2012-06-12T05:14:03.297 回答