javascript - Chrome - 将 map div 从 iframe 移回会卡住 map

标签 javascript google-maps google-chrome extjs

我的网络应用程序中有一个谷歌地图,我有一个打印按钮,单击该按钮会打开一个 iframe,在这里我从父级获取 map 并将其放置在 iframe 中,我还克隆了 map 并将克隆到父级中,使其看起来相同。在 iframe 内,您可以移动 map 等,用户可以打印 map 等,我的问题是当他们关闭 iframe 时,我删除克隆的 map 并将原始 map 附加回父级。

在 Firefox、IE 和 Edge 中,我可以在 iframe 关闭后自由移动 map 、放大和缩小等。但在 Chrome 中,它会卡住,如果我将鼠标悬停在街景男人上,则不会移动/缩放任何内容不过,光标确实会发生变化,如果我单击底部的超链接(即使用条款),这也会起作用!

我已经快速拼凑了一把 fiddle 来展示这一点

https://jsfiddle.net/a397981w/3/

// add original map again
parent.dom.appendChild(domNode);

当显示 fiddle 加载 map 时,单击 map 下方的按钮,将弹出 iframe,其中包含 map ,您可以移动此 map ,当您关闭 iframe 并尝试在原始 map 内移动时,什么也不会发生在 Chrome 中。

为了让这个 fiddle 适合我的测试,我必须从命令行运行 Chrome,如下所示,请注意,这仅用于测试目的,因为我在使用 iframe 时遇到了跨站点脚本错误

chrome.exe --disable-web-security

最佳答案

该问题与您正在监听 ExtJS 窗口的 destroy 事件有关。如果您将其更改为监听 close 事件,则它可以在 Chrome 中正常工作。

参见Updated fiddle

关于javascript - Chrome - 将 map div 从 iframe 移回会卡住 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41571689/

相关文章:

javascript - HTML5 跨浏览器的故事与 CSS/JS 有何不同?

javascript - GMap - 如果光标不在标记顶部,则 onrightclick 事件不会触发

javascript - 三.TextureLoader加载不上图片文件

android - Ionic View 不显示在 chrome inspect 上

javascript - 从我的 map 更改样式

javascript - onPopState() 仅在 Google Chrome 中抛出错误

javascript - 响应式菜单不会滚动到右侧的 div,而是滚动到页面顶部

javascript - 检查对象键是否具有属性(如果有),检查值的 .length

javascript - JS - 通过正则表达式搜索带引号和不带引号的字符串

java - 我怎样才能专注于谷歌地图的某个部分