4

gmap3プラグインで「autoFit」を使用しているので、マップ上のオブジェクトに最適なレベルにズームします。問題は、オブジェクトが1つしかない場合、最大レベルにズームインしすぎてしまうことです。ズームレベル14を超えないようにするにはどうすればよいですか?

ありがとう。

4

3 に答える 3

7

maxZoomを使用できますが、これにより、自動調整機能ではなく、マップの最大ズームが設定されます。つまり、ユーザーは必要に応じて地図をさらに拡大することはできません。

map:{
      center: true,
      zoom: 10,
      maxZoom: 18
    }

代わりに、マップを希望のズームレベルにズームアウトするサイズで、すべてのポイントに非表示の円または半径を追加しました。このようにして、ユーザーは必要に応じてさらにズームインすることができます。

$('#test').gmap3(
    { 
        action: 'addMarker',
        latLng: "your data input for markers",
        map:{
            center: true,
            zoom: 10
        }
    },
    { 
        action: 'addCircle',
        latLng: "your data input for markers",
        options: {
            radius : 75,
            strokeOpacity: 0,
            fillOpacity: 0,
        }
    },
    'autofit'
);
于 2011-10-04T10:07:20.370 に答える
4

maxzoomプロパティをgmap3プラグインのmapプロパティに追加できます。

$('#test1').gmap3(
      {
        action: 'addInfoWindow',
        address: "some place name",
        map:{
          center: true,
          zoom: 5,
          maxZoom: 10
        },...
于 2011-08-15T14:53:44.940 に答える
3

これは、gmap3バージョン5.1.1で機能するようです。autofit:{maxZoom:14}を使用するだけです。これにより、オートフィットでレベル14にのみズームインするようにマップに指示され、ユーザーはマウスまたはズームコントロールを使用してズームインまたはズームアウトできます。

    $(function(){

    $("#test").gmap3();

    $('#test-ok').click(function(){
      var addr = $('#test-address').val();
      if ( !addr || !addr.length ) return;
      $("#test").gmap3({
        getlatlng:{
          address:  addr,
          callback: function(results){
            if ( !results ) return;
            $(this).gmap3({
              marker:{

                latLng:results[0].geometry.location,
                map:{

                  center: true,

                },

              },
              autofit:{maxZoom: 14},

            });

          }
        }
      });
    });

    $('#test-address').keypress(function(e){
      if (e.keyCode == 13){
        $('#test-ok').click();
      }
    });
  });
于 2013-07-05T18:48:56.350 に答える