1

我有一个显示位置的页面。我有两个标签,一个用于谷歌地图,一个用于天气。

例如这个位置http://www.places4two.de/location/date-in-mozart-stuben/45/

但是如果您看到,如果您切换到天气选项卡,则该选项卡未完全加载。如果我首先激活天气选项卡,则 googlemaps 选项卡未完全加载。

我在这里做错了什么?

这是代码:

  $('#myTab a').click(function (e) {
     e.preventDefault();
     $(this).tab('show');
  });

html

<div style="padding-left: 75px">
  <ul class="nav nav-tabs" id="myTab">
    <li class="active"><a href="#lage">Lage</a></li>
    <li><a href="#wetter">Wetter</a></li>
  </ul>
</div> 
<div class="tab-content">
  <div class="tab-pane active" id="lage">
     <div id="map-canvas" style="max-width: 1100px; height: 350px"> </div>
  </div>
  <div class="tab-pane" id="wetter">
     <div id="basicMap" style="max-width: 1100px; height: 350px"> </div>    
  </div>                  
</div>

非常感谢您的帮助

4

2 回答 2

0
    $('a[href="#lage"]').on('shown', function(e) {
        google.maps.event.trigger(map, 'resize');
    });

    $('#myTab a[href="#lage"]').on('shown', function(){
        google.maps.event.trigger(map, 'resize');
        map.setCenter(latlng);
    });

在选项卡上调用地图时需要调整地图大小。

于 2013-10-12T10:06:45.477 回答
0

我以另一种方式解决了这个问题。

$(function(){
$('#wetter').hide();
 $('#wetteron').click(function (e) {
        e.preventDefault();
        $('#lage').hide();
        $('#wetter').show();
        $('#lageon').parent('li').removeClass('active');
        $(this).parent('li').addClass('active');                                
     });
     $('#lageon').click(function (e) {
        e.preventDefault();
        $('#wetter').hide();
        $('#lage').show();
        $('#wetteron').parent('li').removeClass('active');
        $(this).parent('li').addClass('active');
     });
});

添加了html

<li class="active"><a href="#lage" id="lageon">Lage</a></li>
<li><a href="#wetter" id="wetteron">Wetter</a></li>
于 2013-10-12T10:31:29.950 回答