Window: moveTo() method

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

* Some parts of this feature may have varying levels of support.

The moveTo() method of the Window interface moves the current window to the specified coordinates.

Note: This function moves the window to an absolute location. In contrast, window.moveBy() moves the window relative to its current location.

Syntax

js
moveTo(x, y)

Parameters

x

The horizontal coordinate to be moved to.

y

The vertical coordinate to be moved to.

Return value

None (undefined).

Examples

This example moves the window to the top-left corner of the screen.

js
function origin() {
  window.moveTo(0, 0);
}

Specifications

Specification
CSSOM View Module
# dom-window-moveto

Browser compatibility

desktop mobile server
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
moveTo
Chrome – Full support
Chrome 1 (Release date: 2008-12-11)
footnote Full support
Edge – Full support
Edge 12 (Release date: 2015-07-29)
footnote Full support
Firefox – Full support
Firefox 1 (Release date: 2004-11-09)
footnote Full support
Opera – Full support
Opera 12.1 (Release date: 2012-11-20)
footnote Full support
Safari – Full support
Safari 1 (Release date: 2003-06-23)
footnote Full support
Chrome Android – Full support
Chrome Android 18 (Release date: 2012-06-27)
footnote Full support
Firefox for Android – Full support
Firefox for Android 4 (Release date: 2011-03-29)
footnote Full support
Opera Android – Full support
Opera Android 12.1 (Release date: 2012-10-09)
footnote Full support
Safari on iOS – Full support
Safari on iOS 1 (Release date: 2007-06-29)
footnote Full support
Samsung Internet – Full support
Samsung Internet 1 (Release date: 2013-04-27)
footnote Full support
WebView Android – Full support
WebView Android 4.4 (Release date: 2013-12-09)
footnote Full support
WebView on iOS – Full support
WebView on iOS 1 (Release date: 2007-06-29)
footnote Full support
Deno – No support
Deno
footnote No support
Moved relative to the Multi-screen origin
Chrome – Full support
Chrome 100 (Release date: 2022-03-29)
footnote
footnote Without the window-management permission, multi-screen coordinates are used, but windows are clamped to their existing displays.
Edge – Full support
Edge 100 (Release date: 2022-04-01)
footnote
footnote Without the window-management permission, multi-screen coordinates are used, but windows are clamped to their existing displays.
Firefox – Full support
Firefox 1 (Release date: 2004-11-09)
footnote
footnote Multi-screen coordinates are used, but windows are clamped to their existing displays.
Opera – Full support
Opera 86 (Release date: 2022-04-20)
footnote
footnote Without the window-management permission, multi-screen coordinates are used, but windows are clamped to their existing displays.
Safari – Partial support
Safari 1 (Release date: 2003-06-23)
footnote Partial support
footnote Coordinate origin used is inconsistent/unreliable.
Chrome Android – Full support
Chrome Android 100 (Release date: 2022-03-29)
footnote
footnote Without the window-management permission, multi-screen coordinates are used, but windows are clamped to their existing displays.
Firefox for Android – Full support
Firefox for Android 4 (Release date: 2011-03-29)
footnote
footnote Multi-screen coordinates are used, but windows are clamped to their existing displays.
Opera Android – Full support
Opera Android 69 (Release date: 2022-05-09)
footnote
footnote Without the window-management permission, multi-screen coordinates are used, but windows are clamped to their existing displays.
Safari on iOS – Partial support
Safari on iOS 1 (Release date: 2007-06-29)
footnote Partial support
footnote Coordinate origin used is inconsistent/unreliable.
Samsung Internet – Full support
Samsung Internet 19 (Release date: 2022-11-01)
footnote
footnote Without the window-management permission, multi-screen coordinates are used, but windows are clamped to their existing displays.
WebView Android – Full support
WebView Android 100 (Release date: 2022-03-29)
footnote
footnote Without the window-management permission, multi-screen coordinates are used, but windows are clamped to their existing displays.
WebView on iOS – Partial support
WebView on iOS 1 (Release date: 2007-06-29)
footnote Partial support
footnote Coordinate origin used is inconsistent/unreliable.
Deno – No support
Deno
footnote No support

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
No support
No support
See implementation notes.

As of Firefox 7, websites can no longer move a browser window in the following cases:

  1. You can't move a window or tab that wasn't created by Window.open().
  2. You can't move a window or tab when it's in a window with more than one tab.

Note: This function might not move the window synchronously. In some environments (like Wayland, or mobile) it might not move the window at all. Currently there's no way to listen to a move event, see CSS Working Group issue #7693.

See also