Skip to content

Prevent display sleep and enable wake lock in any Android or iOS web browser.

License

Notifications You must be signed in to change notification settings

Uriopass/NoSleep.js

 
 

Repository files navigation

NoSleep.js

Prevent display sleep and enable wake lock in all Android and iOS web browsers.

Check out the live demo in any Android or iOS web browser.

Installation

This package is published to npm as @uriopass/nosleep.js and can be installed with:

npm install @uriopass/nosleep.js

Build from source

Install all development dependencies with:

npm install

To build this library run:

npm run build

Usage

Import ES6 module:

import NoSleep from '@uriopass/nosleep.js';

Create a new NoSleep object and then enable or disable it when needed.

To create a new NoSleep object:

var noSleep = new NoSleep();

To enable wake lock:

NOTE: This function call must be wrapped in a user input event handler e.g. a mouse or touch handler

// Enable wake lock.
// (must be wrapped in a user input event handler e.g. a mouse or touch handler)
document.addEventListener('click', function enableNoSleep() {
  document.removeEventListener('click', enableNoSleep, false);
  noSleep.enable();
}, false);

To disable wake lock:

// Disable wake lock at some point in the future.
// (does not need to be wrapped in any user input event handler)
noSleep.disable();

See example/index.html (and the live demo) for more information.

Feedback

If you find any bugs or issues please report them on the NoSleep.js Issue Tracker.

If you would like to contribute to this project please consider forking this repo, making your changes and then creating a new Pull Request back to the main code repository.

License

MIT. Copyright (c) Rich Tibbett.

See the LICENSE file.

About

Prevent display sleep and enable wake lock in any Android or iOS web browser.

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 78.9%
  • HTML 21.1%