--- title: Screen.lockOrientation() slug: Web/API/Screen/lockOrientation translation_of: Web/API/Screen/lockOrientation ---
{{APIRef("CSSOM View")}}{{SeeCompatTable}}
lockOrientation
此方法会把屏幕锁定为指定的方向.
注意: 此方法仅适用于已安装的Web apps 或 全屏模式 的Web 页面.
lockedAllowed = window.screen.lockOrientation(orientation);
以下的字符串即表示你也许会指定的一些可能的方向。
portrait-primary
portrait-secondary
它表示屏幕处于辅助肖像模式时的方向。如果设备与正常位置保持180°,并且该位置处于纵向位置,或者设备的正常位置处于横向位置,并且持有的设备逆时针转动90°,则屏幕将处于辅助人像模式。正常的位置是依赖于设备的。
landscape-primary
landscape-secondary
portrait
portrait-primary
和 portrait-secondary
.landscape
landscape-primary
和 landscape-secondary
.default
portrait-primary
和 landscape-primary
主要取决于设备的自然方向。例如,如果面板分辨率为1280 * 800,则 default
为横向,如果分辨率为800 * 1280,则 default
为纵向。注意: 可同时设置多个锁定值。因此,如果锁定设置为只有一个方向,屏幕方向将永远不会改变,直到屏幕方向解锁。否则,只要方向在设备锁定的方向之中,屏幕方向就会从一个方向改变到另一个方向。
如果方向被授权锁定,则返回 true
;如果方向锁定被拒绝,则返回 false
。请注意,返回值并不表示屏幕方向确实被锁定:可能会有延迟。
DOMString
参数screen.lockOrientationUniversal = screen.lockOrientation || screen.mozLockOrientation || screen.msLockOrientation; if (screen.lockOrientationUniversal("landscape-primary")) { // 方向已锁定成功 } else { // 方向锁定失败 }
Array
参数screen.lockOrientationUniversal = screen.lockOrientation || screen.mozLockOrientation || screen.msLockOrientation; if (screen.lockOrientationUniversal(["landscape-primary", "landscape-secondary"])) { // 方向已锁定成功 } else { // 方向锁定失败 }
规范 | 状态 | 说明 |
---|---|---|
{{SpecName('Screen Orientation', '', 'Screen Orientation')}} | {{Spec2('Screen Orientation')}} | Initial definition |
{{CompatibilityTable}}
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
基础支持 | {{CompatChrome(38)}}[1] | {{CompatVersionUnknown}} {{property_prefix("moz")}}[2] | 11 {{property_prefix("ms")}}[3] | {{CompatNo}} | {{CompatNo}} |
Array 参数 |
{{CompatNo}} | {{CompatGeckoDesktop("18.0")}} | 11 {{property_prefix("ms")}} | {{CompatNo}} | {{CompatNo}} |
default |
{{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
基础支持 | {{CompatNo}} | {{CompatChrome(38)}}[1] | {{CompatVersionUnknown}} {{property_prefix("moz")}}[2] | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
Array 参数 |
{{CompatNo}} | {{CompatNo}} | {{CompatGeckoMobile("18.0")}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
default |
{{CompatNo}} | {{CompatNo}} | {{CompatGeckoMobile("26.0")}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
[1] 使用更新的标准语法(screen.orientation.lock
)实现类似的方法并返回一个 Promise
。虽然它存在于桌面上,但总是会失败。
[2] 此API仅作为Firefox OS和Firefox的前缀方法(screen.mozLockOrientation
)实现。另外,由于{{Bug(966480)}},它不适用于Android的Firefox。
[3] 此方法在Internet Explorer for Windows 8.1和Windows RT 8.1中使用前缀(screen.msLockOrientation
)实现。 它在Windows 7 上不受支持。