全屏控制和维护地图中心

Cra*_*chi 9 javascript google-maps google-maps-api-3

目前,似乎如果我说一个适度大小的谷歌地图显示端口(300像素×300像素)启用了FullscreenControl,我将这个小地图视图集中在特定区域,例如......法国......然后我点击全屏按钮将显示扩展到我的屏幕边缘(1920px×1080px),法国在屏幕的左上角显得格格不入.

基本上,原始300px x 300px显示屏的左上角移动到屏幕的左上角,世界地图的其余部分从原始缩放级别的角落延伸.

是否有任何方法可以基本上设置它以使全屏显示打开与原始显示具有相同的中心点,反之亦然当全屏模式关闭时?

切换全屏按钮会触发事件或我可以挂钩setCenter的任何内容吗?

Pra*_*avi 1

尝试这个

/** To detect Map Full Screen event */
google.maps.event.addListener( map, 'bounds_changed', onBoundsChanged ); //Event listener map bound change.
var isMapFullScreen = false;
var defaultLocation = {
    lat: 27.94,
    lng: -82.45
};
function onBoundsChanged() {
    if(!isMapFullScreen){
        var isFullHeight = $(map.getDiv()).children().eq(0).height() == window.innerHeight;
        var isFullWidth= $(map.getDiv()).children().eq(0).width()  == window.innerWidth;
        if (isFullHeight && isFullWidth) {
            isMapFullScreen = true;
            myMarker.setPosition(defaultLocation);
            map.setCenter(defaultLocation);
            console.log('FULL');
        } else {
           isMapFullScreen = false; 
           console.log('NOT-FULL');
        }
    }
}
Run Code Online (Sandbox Code Playgroud)