【问题标题】:FitBounds doesnt work in googlemaps javascriptFitBounds 在谷歌地图 javascript 中不起作用
【发布时间】:2019-12-15 00:13:20
【问题描述】:

我有一张地图和一个标记列表,每个标记在 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());

【问题讨论】:

标签: javascript google-maps google-maps-api-3 maps fitbounds


【解决方案1】:

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 是这样设置的,因为我写代码的js在子Frame中,而map是在Parent Frame中定义的。
  • 如何声明地图?嵌入式地图使用 Google 地图 URL。但是,如果您只想让地图显示特定数据,则可以从link生成地图
  • 声明地图就像上面的代码一样。变量映射。好吧,这是用父框架的jsp编写的,我想设置边界的代码在子框架jsp的js中。我已经检查过了...window.parent.map 工作正常!!
  • 你能按照我的方式给你的 iframe 一个“id”吗?如果没有跨域错误,理论上应该可以工作。
  • 我终于解决了。问题是,当我向地图添加标记时,地图 DIV 的样式为:无。
猜你喜欢
  • 1970-01-01
  • 2014-12-14
  • 2012-06-19
  • 2016-06-16
  • 2017-10-09
  • 2012-01-15
  • 2018-01-16
  • 2015-04-06
  • 2011-03-25
相关资源
最近更新 更多