2010-07-21 87 views
0
<div style="display: none;"> 
     <div id="location<?php echo $r->id ?>"> 

      <?php echo $r->address; ?>, <?php echo $r->city; ?>, <?php echo $r->province; ?> 

      <h3 class="sub">Map of Location</h3> 
       <?php 
        $CI->conjunction->showMap($r->id, $r->lat, $r->lon, $r->postal, 'map_canvas'); 
       ?> 
      <div id="map_canvas" style="width: 250px; height: 250px;"></div>    
     </div> 
    </div> 

上述代码是我用来显示隐藏的DIV。 然后我使用FancyBox与谷歌地图内联分裂

$('a#inline').fancybox({ 
     'autoScale': true 
    , 'autoDimensions': true 
    , 'centerOnScroll': true 
}); 

调用Fancybox显示内容。 但是,Google地图总是打破lightbox,并且默认显示。

是否有合理的解决方法强制地图隐藏,直到DIV环绕它显示?

回答

1

我的Flash应用程序中存在类似的问题,它会填充浏览器视口:解决方法是通过URL将其拖动到带有fancybox的iframe中。

 $("a#inline").fancybox({ 
      'width'    : '95%', 
      'height'   : '95%', 
      'autoScale'   : false, 
      'transitionIn'  : 'slow', 
      'transitionOut'  : 'none', 
      'type'    : 'iframe' 
     }); 

<a id="various5" href="http://mappage">Link</a> 

这是不理想的,因为你可以看到,但它是一种解决方法。

0

不太清楚如何来解决这个问题,但你可能想看看这个插件:

http://colorpowered.com/colorbox/

我用的fancybox一段时间,直到我意识到它使IE浏览器挂起,直到所有图片在页面上被加载。也许看看你是否使用这个插件得到相同的结果?