Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Emit custom events from an input so you can do stuff like listening for "enter" and "esc" events the same way as you would "keyup".

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 .gitignore
Octocat-spinner-32 README.md
Octocat-spinner-32 add-keyup-events.js
Octocat-spinner-32 package.json
README.md

add-keyup-events

Takes an element, usually an <input> or <textarea> and registers a keyup handler on it that emits named events for special keys. It does enter and esc events by default.

You can override the events by passing an optional second argument that follows the format: {keyvalue: 'customEventName'}.

installing

npm install add-keyup-events

using

var addKeyupEvents = require('add-keyup-events');


// some input
var input = document.create('input');

// pass it our input
addKeyupEvents(input);

// Now we can listen for "enter" and "esc" events using the
// normal `addEventListener` the browser gives us.
input.addEventListener('enter', doSomething, false);

You can also override the events to listen for whatever you want.

// some input
var input = document.create('input');

// create a custom hash of keycode to event name mappings:
var customEvents = {
    65: 'a',
    12: 'enter'
};

// pass it our input, and our custom events
addKeyupEvents(input, customEvents);

// now we can listen for 'a' events and 'enter' events
input.addEventListener('a', doSomething, false);

credits

If you like this, follow @HenrikJoreteg on twitter and check out my book: Human JavaScript.

license

MIT

Something went wrong with that request. Please try again.