使用设备方向检测设备是不是处于横向[重复]

Posted

技术标签:

【中文标题】使用设备方向检测设备是不是处于横向[重复]【英文标题】:Detect if device is in landscape using deviceorientation [duplicate]使用设备方向检测设备是否处于横向[重复] 【发布时间】:2015-10-15 15:41:39 【问题描述】:

使用

window.addEventListener('deviceorientation', handleOrientation);

监听设备方向

我知道我需要找到设备的 alpha (0 - 360) 但不知道用什么范围来判断手机是否处于横向模式

【问题讨论】:

***.com/questions/4917664/… 或 ***.com/questions/15980680/… 感谢第一个链接完成 @epascarello 标记为重复的问题与 OP 在这里提出的问题完全不同。我同意这与设备方向有关,但 OP 专门要求 deviceorientation 事件,但没有任何答案提供,而是建议其他事件。这些不适用于 PWA,只有 deviceorientation 可以工作。所以我要求重新打开它。 @RajshekarReddy 问题已超过 3 年,您是否看到您上面的评论。哈哈 @epascarello 我明白了,没什么冒犯的。但是现在由于 PWA 已经上市,安装的应用程序需要此事件来触发方向更改才能工作。这就是我认为重新打开它会是一个更好的选择的原因.. 【参考方案1】:

您应该检查事件中的 alpha 值。

function handleOrientation (event) 
    if (event.alpha>89 && event.alpha<150) //the device is landscape at 90
        console.log("Device is landscape");
    ;


【讨论】:

嗨,谢谢,这有效,但前提是我向左倾斜 这根本不是真的

以上是关于使用设备方向检测设备是不是处于横向[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iPad 中检查设备方向从纵向到横向和反之亦然的变化 [重复]

以编程方式快速更改设备方向 4 IOS 11 [重复]

ios中的设备旋转[重复]

IOS 6强制设备方向为横向

当 iphone 设备方向朝上/朝下时,我可以判断它是横向还是纵向?

iOS 应用程序初始屏幕方向不适用于横向