This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for the proper prefixes to use in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the spec changes.


The Screen.orientation property give the current orientation of the screen.


var orientation = window.screen.orientation;

Return value

The return value is a string representing the orientation of the screen. It can be portrait-primary, portrait-secondary, landscape-primary, landscape-secondary (See lockOrientation for more info about those values).


var orientation = screen.orientation || screen.mozOrientation || screen.msOrientation;

if (orientation === "landscape-primary") {
  console.log("That looks good.");
} else if (orientation === "landscape-secondary") {
  console.log("Mmmh... the screen is upside down!");
} else if (orientation === "portrait-secondary" || orientation === "portrait-primary") {
  console.log("Mmmh... you should rotate your device to landscape");


Specification Status Comment
Screen Orientation API
The definition of 'Screen Orientation' in that specification.
Working Draft Draft specification

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 38 (Yes) moz 11ms 25 Not supported
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support Not supported 39 (Yes) moz Not supported Not supported Not supported

Gecko notes

This API is currently in draft form. It is only implemented as a prefixed method (mozOrientation) in B2G and Firefox for Android.

Trident notes

This property is implemented using a prefix (msOrientation) in Internet Explorer for Windows 8.1 and Windows RT 8.1. It is not supported on Windows 7.

See also

Document Tags and Contributors

Last updated by: teoli,