2012-02-21 52 views
5

我有以下代码工作正常,但我无法添加缩放级别。根据docs它应该与'option', 'zoom', 7一起工作,但这会产生一个错误:"$("#map_canvas").gmap("option", "zoom", 7).bind is not a function"jquery-ui-map如何设置缩放级别

工作代码,sans缩放,编辑。缩放始终为1.

$("#map_trigger").click(function(){ 
     var prop_id = $("#map_canvas").attr("rel"); 
     $('#map_canvas').gmap({'zoom':6}).bind('init', function(evt, map) { 
      $.getJSON(basepath+'properties/get_gps_coords/'+prop_id, function(data) { 
       $.each(data.markers, function(i, m) { 
        lat = m.latitude; 
        longitude = m.longitude; 
        $('#map_canvas').gmap(
         'addMarker', { 'position': new google.maps.LatLng(lat, m.longitude), 'bounds':true } 
        ); 
       }); 
      }); 
     }); 
    }); 

如何向此代码段添加缩放级别?

回答

8

用途:

$("#map_canvas").gmap({'zoom':7}) 

选项,方法可以在地图上已经被初始化并且不会返回一个jQuery对象中使用,所以它不是可链接(什么会解释你得到了错误)。

+1

哪里?我尝试了不同的位置,在'.bind'('init',' – stef 2012-02-21 10:40:40

+0

这不是最大值,它是显示所需的缩放比例所有标记,因为您在标记创建过程中将“边界”设置为true。将边界设置为false并将地图中心设置为标记位置 – 2012-02-21 10:44:29

+0

'之前更新了我的代码,但缩放总是最大的时候 – stef 2012-02-21 10:51:18

10

此代码的工作对我来说:

<!doctype html> 
<html> 
    <head> 
     <meta http-equiv="content-language" content="es"> 
     <meta charset="utf-8"> 

     <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
     <script type="text/javascript" src="js/jquery-1.7.1/jquery.min.js"></script> 
     <script type="text/javascript" src="../ui/jquery.ui.map.js"></script> 

    </head> 
    <body> 
     <div style="height: 500px; width:500px;" id="map_canvas"></div> 
     <button id="btnChangeZoom">change zoom</button> 
     <script type="text/javascript"> 
     $(function() { 
      $('#map_canvas').gmap({ 'center': '40.33238,-3.76546','scrollwheel':false}); 
      $('#map_canvas').gmap('option', 'mapTypeId', google.maps.MapTypeId.SATELLITE); 
      $('#map_canvas').gmap('option', 'zoom', 17); 
      }); 

     $("#btnChangeZoom").click(function(){changeZoom()}); 

     function changeZoom(){ 
      $('#map_canvas').gmap('option', 'zoom', 10); 
     } 
     </script> 
    </body> 
</html> 
2

呦需要到中心的地图,然后放大它。这里是一个代码示例

$('#map_canvas').gmap({'center': '43.1502, 25.02083'}) 
$('#map_canvas').gmap('option', 'zoom', 10); 
$('#map_canvas').gmap('addMarker', {'position': '43.1502, 25.02083', 'icon': '/picnic/img/Pin.png'}).click(function() { 
    //$('#map_canvas').gmap('openInfoWindow', {'content': 'Hello World!'}, this); 
});