jQuery collection plugin that triggers events for common accessibility keys e.g. ENTER, SPACE, ESC, ARROW KEYS.
npm install jquery-common-keydownjQuery collection plugin that adds observer for common accessibility keydown event, e.g. enter, space, esc, arrows.
``js`
$(collection).commonKeyDown();
`js`
npm install jquery-common-keydown
`html`
`js`
// non-delegated event listener
$('ul').commonKeyDown().on('spaceKeyDown enterKeyDown', function(e) {
// this = ul
// e.target = button
});
// delegated event listener
$('ul').commonKeyDown().on('spaceKeyDown enterKeyDown', 'button', function(e) {
// this = button
// e.target = button
});
* enterKeyDownescapeKeyDown
* spaceKeyDown
* pageUpKeyDown
* pageDownKeyDown
* endKeyDown
* homeKeyDown
* leftArrowKeyDown
* upArrowKeyDown
* rightArrowKeyDown
* downArrowKeyDown
*
`js`
$.fn.commonKeyDown.keyCodes = {
ENTER: 13,
ESCAPE: 27,
SPACE: 32,
PAGEUP: 33,
PAGEDOWN: 34,
END: 35,
HOME: 36,
LEFTARROW: 37,
UPARROW: 38,
RIGHTARROW: 39,
DOWNARROW: 40
};
Run npm start for browser based development or npm run tdd for test driven development. All tests are located in test.js.
Execute npm run to view all available CLI scripts:
* npm start launch local server and refreshes browser on any source file changenpm test
* runs tests & generates reports (see reports section below)npm run tdd
* test driven development: watches code and re-tests after any changenpm run lint
* lints code and reports to lint.txtnpm run build
* cleans, lints, tests and minifies (called on npm prepublish hook)npm run clean
* deletes all generated test reports and coverage files
Each test run will generate the following reports:
* /test_reports/coverage contains Istanbul code coverage report/test_reports/html
* contains HTML test report/test_reports/junit` contains JUnit test report
*
https://travis-ci.org/makeup-jquery/jquery-common-keydown
https://coveralls.io/github/makeup-jquery/jquery-common-keydown?branch=master