The ScreenOrientation
interface of the Screen Orientation API provides information about the current orientation of the document.
A ScreenOrientation
instance object can be retrieved using the screen.orientation
property.
Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
The ScreenOrientation
interface of the Screen Orientation API provides information about the current orientation of the document.
A ScreenOrientation
instance object can be retrieved using the screen.orientation
property.
ScreenOrientation.type
Read only
Returns the document's current orientation type, one of portrait-primary
, portrait-secondary
, landscape-primary
, or landscape-secondary
.
ScreenOrientation.angle
Read only
Returns the document's current orientation angle.
ScreenOrientation.lock()
Locks the orientation of the containing document to its default orientation and returns a Promise
.
ScreenOrientation.unlock()
Unlocks the orientation of the containing document from its default orientation.
Listen to these events using addEventListener()
or by assigning an event listener to the oneventname
property of this interface.
change
Fired whenever the screen changes orientation.
In the following example, we listen for an orientation change
event and log the new screen orientation type and angle.
screen.orientation.addEventListener("change", (event) => { const type = event.target.type; const angle = event.target.angle; console.log(`ScreenOrientation change: ${type}, ${angle} degrees.`); });
Specification |
---|
Screen Orientation # screenorientation-interface |
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | ||
ScreenOrientation |
38 | 79 | 43 | 25 | 16.4 | 38 | 43 | 25 | 16.4 | 3.0 | 38 | |
angle |
38 | 79 | 43 | 25 | 16.4 | 38 | 43 | 25 | 16.4 | 3.0 | 38 | |
change_event |
38 | 79 | 43 | 25 | 16.4 | 38 | 43 | 25 | 16.4 | 3.0 | 38 | |
lock |
38Always throwsNotSupportedError . |
79Always throwsNotSupportedError . |
preview43Always throwsNotSupportedError . |
25Always throwsNotSupportedError . |
No | 38 |
79–97The API exists but returnsNS_ERROR_UNEXPECTED . |
25 | No | 3.0 | 38 | |
type |
38 | 79 | 43 | 25 | 16.4 | 38 | 43 | 25 | 16.4 | 3.0 | 38 | |
unlock |
38Always throwsNotSupportedError . |
79Always throwsNotSupportedError . |
43Always throwsNotSupportedError . |
25Always throwsNotSupportedError . |
No | 38 | 43 | 25 | No | 3.0 | 38 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ScreenOrientation