首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在浏览器调整大小时将谷歌地图(V3)居中(响应式)

在浏览器调整大小时将谷歌地图(V3)居中(响应式)
EN

Stack Overflow用户
提问于 2012-01-10 01:38:06
回答 4查看 92.9K关注 0票数 125

我的页面中有一个Google Maps (V3),页面宽度为100%,中间有一个标记。当我调整浏览器窗口的宽度时,我希望地图保持居中(响应性)。现在,地图只是停留在页面的左侧,并且变得更小。

多亏了邓肯,UPDATE让它完全按照描述的方式工作。这是最终的代码:

代码语言:javascript
复制
var center;
function calculateCenter() {
  center = map.getCenter();
}
google.maps.event.addDomListener(map, 'idle', function() {
  calculateCenter();
});
google.maps.event.addDomListener(window, 'resize', function() {
  map.setCenter(center);
});
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-01-10 01:58:56

当窗口调整大小时,您需要有一个事件侦听器。这对我很有效(把它放在你的初始化函数中):

代码语言:javascript
复制
google.maps.event.addDomListener(window, 'resize', function() {
    map.setCenter(center);
});
票数 144
EN

Stack Overflow用户

发布于 2014-04-16 11:11:08

w3schools.com上的一些很好的例子。我使用了下面的代码,它工作得很好。

代码语言:javascript
复制
google.maps.event.addDomListener(window, 'resize', function() {
  map.panTo(myLatlng);
});

http://www.w3schools.com/googleapi/google_maps_events.asp

票数 4
EN

Stack Overflow用户

发布于 2016-09-14 07:36:45

html:使用您选择的id创建一个div

代码语言:javascript
复制
<div id="map"></div>

js:创建一个map并将其附加到您刚刚创建的div

代码语言:javascript
复制
var map = new google.maps.Map(document.getElementById('map'), {
    zoom: 16,
    center: new google.maps.LatLng(-33.890542, 151.274856)
});

当窗口调整大小时居中

代码语言:javascript
复制
var center = map.getCenter();

google.maps.event.addDomListener(window, 'resize', function() {
    map.setCenter(center);
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8792676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档