谷歌地图在隐藏的div中显示为灰色

时间:2012-11-21 00:43:33

标签: google-maps google-maps-api-3

我已经阅读了关于这个问题的堆栈上的许多线程,但没有什么能解决我的问题。我在一个标签上有谷歌地图,该标签最初在页面加载时隐藏,并希望得到一些帮助。这是完整的代码:

<script type="text/javascript"> 
  function loadsinglemap(){
  var mymap = new MeOnTheMap({
  container: "map_sidebar2",
  html: "<?php echo str_replace('"',"",$post->post_title); ?>",
  address: "<?php echo str_replace('"','',get_post_meta($post->ID, "map_location", true)); ?>",
  zoomLevel: 15,

  });                        
  } 

 jQuery(document).ready(function() {   loadsinglemap();  })

 </script>

This is on the page where the map is displayed:

<script type="text/javascript">
$(document).ready(function(){
$('a.contact').click(function(){
google.maps.event.trigger(mymap, 'resize');
});
});
</script>

我无法让它发挥作用。如果有人看到有帮助的东西请回复。 感谢

编辑:将元素选择器更改为类,我的类链接而不是ID,现在至少可以选择它。我在firebug中收到“mymap未定义”的错误。

3 个答案:

答案 0 :(得分:4)

取消隐藏div后再次调用initilize()函数。 我做到了,它奏效了。      JSFiddle

答案 1 :(得分:0)

我找到了而不是隐藏div设置它的高度/宽度为0px;并将其溢出设置为隐藏。

帮助我希望它可以帮助你:)

答案 2 :(得分:-2)

在这里检查Roosko的答案https://groups.google.com/forum/#!topic/google-maps-js-api-v3/aUrVnx-i7LI,它对我有用!

由于地图在模态获得定义的大小之前加载,因此会渲染 大小为零。

<a href="#?w=500" rel="popup2" class="poplight" onClick="initialize()">
    <img src='images/location1.png' title='Location' alt='images/location2.png' />
</a> 

单击弹出窗口时,我调用了initilize()函数。