1

マップをフルスクリーンで開きたい。私はこれを試しました:

<div class="b-firm-map-content" id="map"></div>
<a href="#" onclick="test2();return false;" >full screen</a>

    function test2(){
    var width  = $(window).width()-3;
    var height = $(window).height();


    $('#map').css({
        'width': width,
        'height': height - 40 ,
        'position': 'absolute  ',
        'z-index'   : '900'
    });

 }

しかし、それは次のようになります:

マイマップが完全に表示されません。

4

2 に答える 2

1

マップが表示されたら、 google.maps.Mapサイズ変更イベントをトリガーします(divのサイズを設定した後、マップが表示されます)。

于 2012-10-15T13:41:57.543 に答える
0

次のように test2() 関数を更新します。

function test2(){
  var width  = $(window).width()-3;
  var height = $(window).height();

  $('#map').css({
    'width': width,
    'height': height - 40 ,
    'position': 'absolute  ',
    'z-index'   : '900'
  });

  google.maps.event.trigger(your_map, 'resize');
}

your_mapをマップ オブジェクトを保持する変数名に置き換えます。

これは、プログラムでマップ コンテナーのサイズを変更するタイミングを API が認識しないという事実に対する解決策です。ドキュメントから:

開発者は、div のサイズが変更されたときにマップ上でこのイベントをトリガーする必要があります: google.maps.event.trigger(map, 'resize') 。

于 2012-10-15T15:35:01.197 に答える