自 Chrome 62(在 Android 上)以来,我遇到了无法在跨域 iframe 中访问 devicemotion 事件的问题。
为了解决这个问题,我不使用 postMessage 将 devicemotion 事件传递给 iframe,而是使用它自己的位置从 iframe 打开一个新选项卡。但是,新选项卡不会接收任何设备运动事件。将 url 复制粘贴到手动打开的选项卡中会导致触发 devicemotion 事件。
我假设新选项卡以某种方式被沙盒化,但我还没有找到任何方法来解决这个问题。如何打开没有此限制的新标签?如果这不可能,有没有其他方法可以绕过 iframe 的跨域限制?
我无权访问父页面。