【问题标题】:Auto-panning map so that infowindow is fully visible自动平移地图,使信息窗口完全可见
【发布时间】:2016-01-30 17:58:06
【问题描述】:

当用户从谷歌地图触发点击事件时,我正在设置标记以放置屏幕中心。但是问题来了,信息窗口内容在视口中不完全可见,如下图所示。我如何通过代码自动平移地图,以便信息窗口在视口中完全可见。我禁用了在信息窗口内容中的滚动。

【问题讨论】:

  • 这是默认行为,您无需执行任何操作。请显示一些代码或提供问题的演示

标签: html google-maps-api-3 infowindow infobubble openinfowindowhtml


【解决方案1】:

我在 StackOverFlow 中找到了解决方案。顺便感谢 Stackoverflow 团队。

google.maps.Map.prototype.panToWithOffset = function(latlng, offsetX, offsetY) {
    var map = this;
    var ov = new google.maps.OverlayView();
    ov.onAdd = function() {
        var proj = this.getProjection();
        var aPoint = proj.fromLatLngToContainerPixel(latlng);
        aPoint.x = aPoint.x+offsetX;
        aPoint.y = aPoint.y+offsetY;
        map.panTo(proj.fromContainerPixelToLatLng(aPoint));
    }; 
    ov.draw = function() {}; 
    ov.setMap(this); 
};

并在点击标记时调用此函数。

【讨论】:

  • 这是否意味着这是重复的?这是 StackOverflow 上的哪个问题?您应该参考来源。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-28
  • 2015-09-20
  • 2017-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多