2015-06-01 35 views
-1

设置成我的工作我的地图位置,以及由于某种原因,我似乎无法能够设置缩放时,我调用特定的功能。下面是我做这个任务:谷歌地图缩放不会与功能

function mapReturn(map){ 
    $('#job-info').on('click', '#map-return', function(e){ 
     e.preventDefault(e); 
     $('#job-info').css('display' , 'none'); 
     $('#map-canvas').cass('display', 'block'); 
     redrawMaps(map); //redraw maps is very the zoom is suppose to change 
     map.fitBounds(bounds); //global variable bounds not needed here 
    }); 
} 

function redrawMaps(map){ 
    map.setCenter(new google.maps.LatLng(39.0111, -95.6752); 
    map.setZoom(7); //i want the zoom to set here but it won't 
    google.maps.event.trigger(map, 'resize'); 
} 

我打算把最后一个逻辑结构,其基于你在做什么目前但现在缩放级别,我想它至少放大到一开始。所以总结一下,我有一个按钮可以返回到前一个视图,当我点击它时,无论如何它都会放大,我只是希望它放大到之前的缩放级别。再次感谢大家!

编辑:要清楚,定义和初始化映射的代码已经设置好了,这是正在使用的代码的一部分,以及代码集中运行不正常的唯一部分。对于完成的缘故,但:

//here are the map options that I used 
var mapOptions = { 
    center : new google.maps.LatLng(39.0111, -95.6752), 
    zoom : 4, 
    zoomControl : false, 
    panControl : false, 
    mapTypeControl : false, 
    streetViewControl : false, 
    draggable : false, 
    scrollWheel : false 
}; 

//here is where I initialize the map object 
var map = new google.maps.Map(document.getElementById('map-canvas', mapOptions); 
+0

您还没有包括的代码定义地图。请提供证明此问题的[最小,完整,测试和可读示例](http://stackoverflow.com/help/mcve)。 – geocodezip

+0

地图的代码已经存在,应该从问题本身暗示,我没有发布300行代码。我可以,如果你绝对想要我,但代码的相关部分已经在这里。 –

+1

一个最小的例子是不是300行代码... – geocodezip

回答

1

呼叫map.setZoom触发resize事件之后(可能需要设置的调整后的中心,也是):

function redrawMaps(map){ 
    google.maps.event.trigger(map, 'resize'); 
    map.setCenter(new google.maps.LatLng(39.0111, -95.6752); 
    map.setZoom(7); 
} 
+0

我刚刚尝试过这一点,我得到了和以前一样的结果。我设置了类似'var zoom = map.getZoom();'并将其打印到控制台以查看它是否已设置并且它已经设置。所以变焦越来越大,但没有设置,但为什么不呢。因为它应该和调整正确? –

+0

这是一个猜测,它可能是这个问题。如果没有[最小,完整,已测试和可读的示例](http://stackoverflow.com/help/mcve),我无法确定是否重现了您遇到的问题(这就是为什么我需要它)。 – geocodezip

+0

以及你的猜测是有点正确的,除非我保持调整大小,地图只是偏离中心。我想我会继续努力,看看我能想出什么。 –