2011-11-15 7 views
0

GoogleMapsのマップを表示しようとしましたが、これはfancybox div内にありますが、display:noneである必要があります。FancyboxのあるGoogleMaps

<div style="display:none;position:absolute;z-index:-999;top:45px;left:300px;" id="divMapCreate" name="divMapCreate"> 
     <div id="createItemDiv2" style="border:1px solid;width:450px;"> 
      <?php echo $this->Form->create(array('action'=>'create2', 'type' => 'post', 'id'=>'createItem2', 'name'=>'createItem2')); ?> 
      <table border="0" width="100%" align="center" cellspacing="0"> 
       <tr> 
        <td align="center"> 
         <strong>Creating an Item</strong> 
        </td> 
       </tr> 
       <tr> 
        <td align="center"> 
         <div id="map_canvas_create" style="width: 450px; height: 350px"></div> 
        </td> 
       </tr> 
       <tr> 
        <td align="right"> 
         <?php echo $this->Form->end('DONE - CREATE'); ?> 
        </td> 
       </tr> 
      </table> 
     </div> 

がどのように地図を表示するためにFancyboxを使用することができますが、ディスプレイとそれに関連付けられたdivの持つ:マップがロードされると、最初から、部分的に表示されますなしを。最初から?

答えて

0

私はこの問題を数回見つけました。解決策は、要約すると、地図をあらかじめロードするのではなく、コンテナが表示された後にロードすることです。

GMapが隠されているとコンテナのサイズを計算できないためだと思います。