-1

我正在使用 jquery-ui-map 并且需要在用户位置上设置缩放级别。目前它定位用户,然后完全放大,但我希望它进一步缩小。我缺乏 javascript 技能,我已经搜索了答案并尝试了很多东西,但似乎没有任何效果。这是代码...

jQuery('#map_canvas').gmap({'center': '-23.7002104, 133.8806114','zoom': 3 }).bind('init', function() { 
    jQuery('#map_canvas').gmap('getCurrentPosition', function(position, status) {
    if ( status === 'OK' ) {
    var clientPosition = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
        jQuery.getJSON( 'http://publicaccessgolf.com.au/mapdata/', function(data) { 
            jQuery.each( data.course, function(i, course) {
                jQuery('#map_canvas').gmap('addMarker', { 
                    'position': new google.maps.LatLng(course.latitude, course.longitude),      
                }).click(function() {
                    jQuery('#map_canvas').gmap('openInfoWindow', { 'content': '<div align="left"><p style="color:#000000;"><a href="http://publicaccessgolf.com.au/' + course.slug + '" >' + course.name + '</a><br />' + course.address + '<br />' + course.contact + '</p></div>' }, this);
                });
            });
        });
        jQuery('#map_canvas').gmap('addMarker', {'position': clientPosition, 'zoom': 3});

    }
    });     
});

好的,我解决了,正确的代码如下。使用 maxZoom 而不是缩放

jQuery('#map_canvas').gmap({'center': '-23.7002104, 133.8806114','maxZoom': 11}).bind('init', function() { 
    jQuery('#map_canvas').gmap('getCurrentPosition', function(position, status) {
    if ( status === 'OK' ) {
    var clientPosition = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
        jQuery.getJSON( 'http://publicaccessgolf.com.au/mapdata/', function(data) { 
            jQuery.each( data.course, function(i, course) {
                jQuery('#map_canvas').gmap('addMarker', { 
                    'position': new google.maps.LatLng(course.latitude, course.longitude),      
                }).click(function() {
                    jQuery('#map_canvas').gmap('openInfoWindow', { 'content': '<div align="left"><p style="color:#000000;"><a href="http://publicaccessgolf.com.au/' + course.slug + '" >' + course.name + '</a><br />' + course.address + '<br />' + course.contact + '</p></div>' }, this);
                });
            });
        });
        jQuery('#map_canvas').gmap('addMarker', {'position': clientPosition, 'bounds':true});

    }
    });     
}); 
4

1 回答 1

0

一旦我遇到这样的问题,我就阅读了 api 文档并找到了一种方法,这对我有用,你可以替换这一行:

jQuery('#map_canvas').gmap('addMarker', {'position': clientPosition, 'zoom': 3});

有了这个:

 jQuery('#map_canvas').gmap('addMarker', {'position': clientPosition});
 jQuery('#map_canvas').gmap('option','zoom',3);
 jQuery('#map_canvas').gmap('option','center',new google.maps.LatLng(position.coords.latitude, position.coords.longitude));

试试这个,看看这是否对你有帮助。

于 2012-12-21T08:02:57.720 回答