Skip to content

derekr/input-has-changed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

Event emitter for common keyup input interaction changes.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published