1

gmaps4railsの特定の座標にズームインする方法。私のアプリケーションのインデックスページで、すべてのユーザーの住所を表示したいが、最初は地図が米国に焦点を合わせ、特定のズームレベルで表示したいとします。

前もって感謝します

4

1 に答える 1

2

gmapsを呼び出した後:

<% content_for :scripts do %>
    <script type="text/javascript" charset="utf-8">
      Gmaps.map.callback = function() {
        setTimeout(function() {
          var bounds = new google.maps.LatLngBounds(new google.maps.LatLng(10, 0), new google.maps.LatLng(0, 10));
          Gmaps.map.serviceObject.panToBounds(bounds);
       }, 50);
      }
    </script>
<% end %>

ズームは渡された境界に合わせて調整されます。それ以外の場合は、次を追加します。

Gmaps.map.serviceObject.setZoom(your_int_value);

よりクリーンなアプローチは、グーグルが提供するコールバックを使用することです。

Gmaps.map.callback = function() {
   google.maps.event.addListenerOnce(Gmaps.map.getMapObject(), 'idle', function(){
     var bounds = new google.maps.LatLngBounds(new google.maps.LatLng(10, 0), new google.maps.LatLng(0, 10));
     Gmaps.map.serviceObject.panToBounds(bounds);
   }
});
于 2012-10-19T13:47:46.633 に答える