在运行 iOS12、chrome 和 safari 的 iPhone 和 iPad 上测试
错误描述:在 iOS 设备(在 iOS12 上测试)上使用 chrome 或 safari 与谷歌地图(通过 iframe 集成在网站中)交互(放大/缩小)后,点击 map 外的链接没有任何作用。
在 codepen 上尝试一下
有趣的是,jsfiddle 中没有出现这个错误
这是一个youtube如果您没有 iOS 设备,我会制作视频。
发生在我的网站上,它是一个带有谷歌地图 iframe 的普通 html 页面(没有其他 javascript,为了测试目的添加了 css 文件):
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d12101.03207249142!2d-74.04012067655368!3d40.690314788042684!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x89c25090129c363d%3A0x40c6a5770d25022b!2sStatue+of+Liberty+National+Monument!5e0!3m2!1sen!2sus!4v1537933952825" width="600" height="450" frameborder="0" style="border:0" allowfullscreen></iframe>
上面的 iframe 是直接从谷歌地图的“分享 > 嵌入 map ”功能获得的。
有什么线索可以解决这个错误吗?
最佳答案
经过一些研究,我找到了一个可以正常工作的解决方案。
如果您向主体添加一个事件监听器,它将解决问题。
document.body.addEventListener("fooAction", function(e) {
// something that does nothing
});
关于ios - iOS 设备上的谷歌地图 iframe 烦人的错误。如何绕过它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52509958/