input-has-changed

0.0.1 • Public • Published

testling badge

input-has-changed

Event emitter for common keyup input interaction changes.

Emits relevant events when the input has actually changed.

npm install input-has-changed

Usage

var hasChanged = require('input-has-changed');
 
var i = document.createElement('input');
i.value = 'initial value';
 
var hc = hasChanged(i);
 
hc.on('changed', function (val) { console.log(val); });
hc.on('original', function (val) { console.log(val); });
 
i.value = 'initial value +'; // on keyup will emit `hc#changed`
i.value = 'initial value'; // on keyup will emit `hc#original`
 
hc.update('new value');
 
i.value = 'new value +'; // on keyup will emit `hc#changed`
i.value = 'new value'; // on keyup will emit `hc#original`

var hc = hasChanged(input)

Pass in an input[type=text|password|email...] element. A keyup handler will be bound to it and filter out nav keys like arrows and tabbing.

hc#changed

Emitted if the val on keyup is different than the original value.

hc#original

Emitter if the val on key is the same as the original value.

hc.update(val)

Update the original value. This makes it easy to change behavior without worrying about rebinding events.

Readme

Keywords

Package Sidebar

Install

npm i input-has-changed

Weekly Downloads

1

Version

0.0.1

License

MIT

Last publish

Collaborators

  • drk