W3cubDocs

/Web APIs

ScreenOrientation

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.

EventTarget ScreenOrientation

Instance properties

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.

Events

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.

Instance methods

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.

Example

In the following example, we listen for an orientation change event and log the new screen orientation type and angle.

js

screen.orientation.addEventListener("change", (event) => {
  const type = event.target.type;
  const angle = event.target.angle;
  console.log(`ScreenOrientation change: ${type}, ${angle} degrees.`);
});

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
ScreenOrientation 38 79 43 No 25 16.4 38 38 43 25 16.4 3.0
angle 38 79 43 No 25 16.4 38 38 43 25 16.4 3.0
change_event 38 79 43 No 25 16.4 38 38 43 25 16.4 3.0
lock
38Always throws NotSupportedError.
79Always throws NotSupportedError.
97
43Always throws NotSupportedError.
preview
No
25Always throws NotSupportedError.
No 38 38
79–97The API exists but returns NS_ERROR_UNEXPECTED.
43–79
25 No 3.0
type 38 79 43 No 25 16.4 38 38 43 25 16.4 3.0
unlock
38Always throws NotSupportedError.
79Always throws NotSupportedError.
43Always throws NotSupportedError.
No
25Always throws NotSupportedError.
No 38 38 43 25 No 3.0

© 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