屏幕:lockOrientation() 方法

已弃用: 此功能不再推荐使用。尽管某些浏览器可能仍支持它,但它可能已被从相关的 Web 标准中移除,或者正在被移除的过程中,或者仅出于兼容性目的而保留。避免使用它,并尽可能更新现有代码;请参阅此页面底部的兼容性表格,以指导您的决策。请注意,此功能可能随时停止工作。

lockOrientation()Screen 接口的方法,用于将屏幕锁定到指定的方位。

警告:此功能已弃用,应避免使用。请改用 ScreenOrientation.lock() 方法。

注意:此方法仅适用于已安装的 Web 应用或处于全屏模式下的 Web 页面。

语法

js
lockOrientation(orientation)

参数

orientation

要将屏幕锁定的方向。可以是字符串或字符串数组。传递多个字符串允许屏幕仅在选定的方向旋转。

以下字符串表示您可以指定的可能的方向要求

portrait-primary

它表示屏幕在主纵向模式下的方向。当设备保持在正常位置且该位置为纵向时,或当设备的正常位置为横向且设备顺时针旋转 90°时,屏幕被认为处于其主纵向模式。正常位置取决于设备。

portrait-secondary

它表示屏幕在辅助纵向模式下的方向。当设备保持在其正常位置 180° 且该位置为纵向时,或当设备的正常位置为横向且设备逆时针旋转 90°时,屏幕被认为处于其辅助纵向模式。正常位置取决于设备。

landscape-primary

它表示屏幕在其主横向模式下的方向。当设备保持在正常位置且该位置为横向时,或当设备的正常位置为纵向且设备顺时针旋转 90°时,屏幕被认为处于其主横向模式。正常位置取决于设备。

landscape-secondary

它表示屏幕在其辅助横向模式下的方向。当设备保持在其正常位置 180° 且该位置为横向时,或当设备的正常位置为纵向且设备逆时针旋转 90°时,屏幕被认为处于其辅助横向模式。正常位置取决于设备。

portrait

它表示 portrait-primaryportrait-secondary

landscape

它表示 landscape-primarylandscape-secondary

default

它表示 portrait-primarylandscape-primary,具体取决于设备的自然方向。例如,如果面板分辨率为 1280*800,则 default 将使其成为横向,如果分辨率为 800*1280,则 default 将使其成为纵向。

注意:可以同时设置多个锁定。因此,如果仅为一个方向设置锁定,则屏幕方向将永远不会改变,直到屏幕方向解锁为止。否则,只要方向在设备已锁定的方向中,屏幕方向就会从一个方向更改为另一个方向。

返回值

如果方向被授权锁定,则返回 true;如果方向锁定被拒绝,则返回 false。请注意,返回值并不表示屏幕方向确实已锁定:可能存在延迟。

示例

使用字符串参数

js
screen.lockOrientationUniversal =
  screen.lockOrientation ||
  screen.mozLockOrientation ||
  screen.msLockOrientation;

if (screen.lockOrientationUniversal("landscape-primary")) {
  // Orientation was locked
} else {
  // Orientation lock failed
}

使用 Array 参数

js
screen.lockOrientationUniversal =
  screen.lockOrientation ||
  screen.mozLockOrientation ||
  screen.msLockOrientation;

if (
  screen.lockOrientationUniversal(["landscape-primary", "landscape-secondary"])
) {
  // Orientation was locked
} else {
  // Orientation lock failed
}

规范

此功能不属于任何规范的一部分。它不再有望成为标准。

请改用 ScreenOrientation.lock()

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅