1
我一直在搜索,我找不到任何地方的这个问题的解决方案。无论如何检测地图何时全屏显示或全屏退出? (非常像DOM事件onfullscreenchange)谷歌地图 - 全屏变化事件?
我有一个地图选项“fullscreenControl”设置为true,我想要做的就是当地图变为全屏时在地图上标记地图,以及显示infowindow只有在地图处于全屏状态时才会显示。我如何检查全屏变更?
我用了整个地图上的DOM事件尝试,但似乎并没有工作,是这样的:
google.maps.event.addDomListener(document.getElementById("map-canvas"), "fullscreen", function() {
console.log("FULLSCREEN CHANGED");
});
我还以为我可以做一个自定义控制,代替作为fullscreenControl的X按钮,可在地图变为全屏时切换,然后我可以侦听该自定义控件上的单击事件,但是没有更好的方法吗?是否真的没有onfullscreenchange事件或类似的事情?
感谢您的帮助!
嗡嗡声我不需要在地图上触发调整大小,因为地图是一个全局可访问的变量,但我明白你为什么建议触发调整大小(这样我可以捕捉它并做我想做的事)。关于检测全屏,我如何进行宽度/高度检查?在地图画布上做“更改”侦听器吗? –
是的,你会然后将它与高度和宽度进行比较,看它是否是全尺寸。 – telhar
好吧,我进一步测试了一下,显然没有简单的方法来检查地图上的更改,因为它不像普通的DOM元素那样工作。所以我最终做的是在地图上添加一个侦听器,以便中心更改时间,然后使用JQuery比较Google地图为地图添加的div(它始终有一个名为“gm-style”的类)高度和宽度与窗口的innerHeight和innerWidth,然后才调整边界。这与一个标记变量结合使用,我只能调用fitBounds一次。这有意义吗?你想用这个更新你的答案吗? –