2

目前我正在使用 Phaser js 开发应用程序。

这是浏览器兼容性问题还是全屏 api 无法正常工作的移相器 js 问题

这是我使用的代码片段

if (phaser.scale.isFullScreen) {
    phaser.scale.stopFullScreen();
} else {
    phaser.scale.startFullScreen(false);
}

类似问题

所以我尝试了他们在链接上的建议

phaser.scale.compatibility.supportsFullScreen = true;

phaser.scale.startFullScreen(false, false);

即使是移相器页面的示例,它也无法运行移相 器全屏

无法在“元素”上执行“请求全屏”:API 只能由用户手势启动。startFullScreen@phaser.2.6.2.min.js:22 phaser.2.6.2.min.js:22

Phaser.ScaleManager:requestFullscreen 失败或设备不支持全屏 API fullScreenError @ phaser.2.6.2.min.js:22

我在 Chrome 56.0.2924.87 Android 4.4.2 上测试

4

2 回答 2

2

您不能设置 的值supportsFullScreen,这取决于用户的浏览器来决定。

相反,查询它并仅在支持时才开始全屏显示。

if (game.scale.compatibility.supportsFullScreen) {
  game.scale.startFullscreen();
}
于 2018-01-07T04:58:58.770 回答
0

Tobe 的回答是正确的,但错误消息还指出您需要从事件中触发它:

“API 只能通过用户手势启动。”

这可能会帮助其他偶然发现此错误的人。确保只在用户点击时调用 startFullScreen。

于 2020-11-16T19:00:00.860 回答