Move the mouse by an offset of the specified element. If an element is provided but no offset, the mouse will be moved to the center of the element. If the element is not visible, it will be scrolled into view.

The command moveToElement() will automatically wait for the element to be present (until the specified timeout). If the element is not found, an error is thrown which will cause the test to fail. You can suppress element not found errors by specifying the selector argument as an object and passing the suppressNotFoundErrors = true option.

For more info on working with DOM elements in Nightwatch, refer to the Finding & interacting with DOM Elements guide page.

Usage

.moveToElement(selector, xoffset, yoffset, [callback])
.moveToElement(using, selector, xoffset, yoffset, [callback])

Parameters

Name Type description
using
Optional
string

The locator strategy to use. See W3C Webdriver - locator strategies

selector string|object

The selector (CSS/Xpath) used to locate the element. Can either be a string or an object which specifies element properties.

xoffset number

X offset to move to, relative to the center of the element.

yoffset number

Y offset to move to, relative to the center of the element.

callback
Optional
function

Optional callback function to be called when the command finishes.

Example

this.demoTest = function (browser) {
  browser.moveToElement('#main', 10, 10);
};