放大gmap4rails中的特定区域

时间:2012-10-19 12:58:50

标签: ruby-on-rails google-maps-api-3 gmaps4rails

如何放大gmaps4rails中的特定坐标。假设在我的应用程序的索引页面上我想显示所有用户的地址,但希望最初地图应该关注美国并具有一定的缩放级别

提前致谢

1 个答案:

答案 0 :(得分: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);

更简洁的方法是使用google提供的回调:

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);
   }
});