FitBounds在谷歌地图javascript中不起作用

FitBounds在谷歌地图javascript中不起作用,javascript,google-maps,google-maps-api-3,maps,fitbounds,Javascript,Google Maps,Google Maps Api 3,Maps,Fitbounds,我有一张地图和一个标记列表,每个标记在LatLng对象中都有一个位置。该位置有效,因为我可以看到地图上的标记。然而,我想让地图适合标记,所以我使用了正确的语法,如下所示。 但是,地图从不在这两个位置缩放和居中。相反,它在初始中心加载,在initMap中缩放配置。有谁能找出这个问题吗 var bounds = new google.maps.LatLngBounds(); var location = new google.maps.LatLng(25.36234, 15.3623); var l

我有一张地图和一个标记列表,每个标记在LatLng对象中都有一个位置。该位置有效,因为我可以看到地图上的标记。然而,我想让地图适合标记,所以我使用了正确的语法,如下所示。 但是,地图从不在这两个位置缩放和居中。相反,它在初始中心加载,在initMap中缩放配置。有谁能找出这个问题吗

var bounds = new google.maps.LatLngBounds();
var location = new google.maps.LatLng(25.36234, 15.3623);
var location2 = new google.maps.LatLng(38.2352, 12.36435);
bounds.extend(location2);
bounds.extend(location);
window.parent.map.fitBounds(bounds);
window.parent.map.setCenter(bounds.getCenter());

window.parent.map
对于解决您的问题来说似乎有点奇怪。
这应该能解决你的问题

var map;

  map = new google.maps.Map(document.getElementById('map'), {
    zoom: 6,
    center: new google.maps.LatLng(39.5473234, 35.3796685),
    mapTypeId: 'roadmap'
  });


  var bounds = new google.maps.LatLngBounds();
  var location = new google.maps.LatLng(25.36234, 15.3623);
  var location2 = new google.maps.LatLng(38.2352, 12.36435);
  bounds.extend(location2);
  bounds.extend(location);
  map.fitBounds(bounds);
  map.setCenter(bounds.getCenter());

什么是
window.parent.map
?请提供一个示例来说明您的问题(如果我将其替换为it works()中的
map
),window.parent.map就是这样设置的,因为编写代码的js位于子框架中,而映射是在父框架中定义的。您如何声明映射?嵌入式地图使用谷歌地图URL。但是,如果您只想让map显示特定的数据,您可以通过声明map与上面的代码类似来生成map。var映射。这是在父框架的jsp中编写的,我想把边界放在子框架jsp的js中。我已经检查过了…window.parent.map工作正常!!你能按照我的方式给你的iframe一个“id”吗?如果没有跨原点错误,理论上应该是可行的。我终于解决了它。问题是,当我向地图添加标记时,地图DIV是style:none。